提问人:Haim 提问时间:11/13/2023 更新时间:11/13/2023 访问量:27
Vite 中的汇总:从主捆绑包导入的区块导致重复下载
Rollup in Vite: Chunks Importing from Main Bundle Causing Duplicate Downloads
问:
我在使用 Rollup 的 Vite 构建过程中遇到了一个问题,其中生成的块试图从主文件导入模块。当主捆绑包在 script 标签中加载查询字符串时,这会导致重复下载,稍后,块会尝试导入没有查询字符串的同一模块。app.bundle.js
index.html
问题概述:
- 该文件最初加载到带有查询字符串(例如 )的 script 标记中。
app.bundle.js
index.html
app.bundle.js?123
- 在生成过程中生成的块会尝试在没有查询字符串的情况下导入模块。
app.bundle.js
- 这会导致同一模块的重复下载,从而导致许多问题,例如重新呈现应用程序和无法正确加载动态页面。
汇总配置:以下是我的简化版本:vite.config.js
rollupOptions: {
output: {
entryFileNames: 'js/app.bundle.js',
chunkFileNames: 'js/chunk.[name].[hash].js',
assetFileNames: 'assets/[ext]/[name].[hash][extname]',
},
* it is neccessary to not use app.[hash].js because there is another process that tries to address the app.bundle.js and is not aware of the actual dynamic file name.
addes dynamic import of using react-router lazy method lazy: () => import("./pathtocomponent").
ran vite build.
the result app.bundle.js file which includes a component "Layout" that is used by the dynamic route component.
the created chunk file of the dynamic route tries to import the Layout component from the main bundle.
//chunk.index.3d260d06
import { La as Layout } from "./app.bundle.js";
答: 暂无答案
评论