在使用带有代码拆分的ROLLUP时,有没有办法保留包的目录结构?
上下文:
给定如下的项目结构:
┌ src
├─┬ a
│ └── module.js
├─┬ b
│ └── module.js
└── util.js
其中两个module.js
文件都导入util.js
,使用以下配置:
export default {
experimentalCodeSplitting: true,
input: [
'src/a/module.js',
'src/b/module.js'
],
output: {
dir: 'bundle',
format: 'esm'
}
};
输出以下结构:
┌ bundle
├── chunk-af6d88c4.js
├── module.js
└── module2.js
问题:
在使用代码拆分来减少项目中的冗余代码时,如果不同目录中有多个具有相同文件名的模块,则当ROLLUP写入输出目录时,它会创建一个平面结构。它足够智能,可以识别多个文件具有相同的名称,并附加一个数字来区分它们。虽然这是工作代码,但在需要它们的页面上维护对那些模块的引用变得很困难-开发人员必须知道哪个数字对应哪个文件。 有没有办法在输出多个捆绑包时使用ROLLUP来保留文件夹结构,以便更清楚地显示文件关系?或者,如果仅通过汇总无法做到这一点,是否可以采用其他解决方案?解决方案
使用预留模块:True标志将从输入输出相同的目录结构。 https://rollupjs.org/guide/en/
相关文章