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

outDir不合理,导致无法找到cesium.js文件。

Open songhuige opened this issue 1 year ago • 14 comments

####vite配置:

export default defineConfig({
  base: "/analysis",
  plugins: [vue(), vueJsx(), cesium()],
});

错误输出路径

|-- dist |-- favicon.ico |-- index.html |-- jquery.min.js |-- nginx.conf |-- analysis |-- |-- cesium |-- |--|-- Cesium.js

预期输出路径

|-- dist |-- favicon.ico |-- index.html |-- jquery.min.js |-- nginx.conf |-- cesium |--|-- Cesium.js

songhuige avatar Sep 06 '24 02:09 songhuige

遇到了同样问题

itfsw avatar Sep 07 '24 06:09 itfsw

找到解决办法了,固定插件版本:1.2.22,新版本引入了cesiumBaseUrl 导致的

itfsw avatar Sep 07 '24 06:09 itfsw

我看了一下 1.2.23 默认 cesiumBaseUrl 也是和1.2.22一样的呀,为什么会出问题呢? https://github.com/nshen/vite-plugin-cesium/commit/85e4c5548a11e8248460e5ff2feef9810dd02156

找到解决办法了,固定插件版本:1.2.22,新版本引入了cesiumBaseUrl 导致的

nshen avatar Sep 07 '24 07:09 nshen

找到解决办法了,固定插件版本:1.2.22,新版本引入了cesiumBaseUrl 导致的

我就是在1.2.22版本出现的这个问题,无法解决。

hqzqaq avatar Sep 12 '24 05:09 hqzqaq

找到解决办法了,固定插件版本:1.2.22,新版本引入了cesiumBaseUrl 导致的

我就是在1.2.22版本出现的这个问题,无法解决。

我通过修改源码解决了

hqzqaq avatar Sep 21 '24 04:09 hqzqaq

我通过修改源码解决了

是哪里的问题呢

nshen avatar Sep 23 '24 11:09 nshen

我通过修改源码解决了

是哪里的问题呢

modify 直接修改的node_modules中的源码,应该还有更好的方式吧,我用的粗暴的

hqzqaq avatar Sep 23 '24 11:09 hqzqaq

image 这里加上base好像就可以了

jak983464779 avatar Oct 17 '24 09:10 jak983464779

我通过修改源码解决了

是哪里的问题呢

我排查了一下,问题出在 outDir 拼接时没有考虑 vite 配置中可能带来绝对路径问题,将 path.join 替换成 path.resolve 即可

Zhliyun avatar Oct 21 '24 03:10 Zhliyun

我通过修改源码解决了

是哪里的问题呢

我排查了一下,问题出在 outDir 拼接时没有考虑 vite 配置中可能带来绝对路径问题,将 path.join 替换成 path.resolve 即可

具体是哪里呢

WebRookie avatar Nov 18 '24 12:11 WebRookie

让cesium的输出路径回溯一层就可以了: export default defineConfig({ base: "/analysis", plugins: [ vue(), vueJsx(), cesium({ cesiumBaseUrl: '../cesium/' }) ], })

JORTON-CHEUNG avatar Dec 13 '24 07:12 JORTON-CHEUNG

让cesium的输出路径回溯一层就可以了: export default defineConfig({ base: "/analysis", plugins: [ vue(), vueJsx(), cesium({ cesiumBaseUrl: '../cesium/' }) ], })

我试过这样,在我的项目中,会导致index.html中引用cesium.js的路径错误

hqzqaq avatar Dec 13 '24 08:12 hqzqaq

我是 把CESIUM_BASE_URL = path.posix.join(base, CESIUM_BASE_URL);注释掉解决的

shuado avatar Jan 02 '25 05:01 shuado

我是 把CESIUM_BASE_URL = path.posix.join(base, CESIUM_BASE_URL);注释掉解决的

这个有效!打包时,路径不需要再套一层base

lycheelin avatar Mar 05 '25 02:03 lycheelin