vite-plugin-cesium icon indicating copy to clipboard operation
vite-plugin-cesium copied to clipboard

项目首次渲染,cesium.js过大导致页面加载过慢

Open tingyuxuan2302 opened this issue 2 years ago • 5 comments

如题,这种大文件首次加载怎么在vite里边处理呢,或者说怎么让它懒加载?

tingyuxuan2302 avatar Nov 30 '22 07:11 tingyuxuan2302

我觉得没啥办法,想用他类库就要先加载它吧

nshen avatar Nov 30 '22 16:11 nshen

我觉得没啥办法,想用他类库就要先加载它吧

我是在子页面用到的,但这个资源首页就加载了😂

tingyuxuan2302 avatar Dec 01 '22 01:12 tingyuxuan2302

哦,应该没有考虑过这个,首页默认会有一个

nshen avatar Dec 01 '22 05:12 nshen

目前(<2023-02-04 Sat 15:43:33 UTC+08:00>)我是这样操作的来避免首页加载Cesium.js的:

  1. 将首页和子页面都使用动态导入的方式进行懒加载 https://router.vuejs.org/zh/guide/advanced/lazy-loading.html
  2. 设置本插件的rebuildCesium为true并重启vite

但所有页面仍都会加载cesium/Widgets/widgets.css,需求点是让Cesium库只在相应页面加载。

src/main.js:

import { createRouter, createWebHashHistory } from "vue-router";
const Home = function () {
  return import("./Home.vue");
};
const Map = function () {
  return import("./Map.vue");
};
const routes = [
  { path: "/", component: Home },
  { path: "/map", component: Map },
];
const router = createRouter({ history: createWebHashHistory(), routes });
app.use(router);

vite.config.js:

import cesium from "vite-plugin-cesium";
plugins.push(cesium({ rebuildCesium: true }));

SunDawning avatar Feb 04 '23 07:02 SunDawning

大佬,可以写个回调进去吗?在cesiumjs加载完时触发这个回调函数?

lienahu9 avatar May 11 '24 04:05 lienahu9