tsc*_*chi 5 javascript build-tools rollupjs
我使用experimentalCodeSplitting: truerollup 0.61.2 的功能来获得良好的代码分割。因为我的项目也包含资产,所以我创建了一个插件,可以相应地复制和缩小资产文件。问题是我使用的钩子会为创建的每个块调用。因此,资产被多次复制和缩小。我发现的唯一解决方法是创建一些标志,在true一切正确完成后将其设置为。是否有一个功能可以在所有事情(或所有事情之前)完成之后而不是每次都调用汇总挂钩chunk?现在我的插件看起来像下面的代码(我删除了一些部分并简化了可读性):
export default function copy(userOptions = {}) {
const name = 'copyAndMinify';
const files = userOptions.files || [];
let isCopyDone = false;
return {
name: name,
// also tried onwrite, ongenerate, buildEnd and generateBundle
buildStart() {
if (isCopyDone) {
return;
}
for (let key in files) {
const src = key;
const dest = files[key];
try {
minifyFile(src, dest);
} catch (err) {
fatal(name, src, dest, err);
}
}
isCopyDone = true;
}
};
};
Run Code Online (Sandbox Code Playgroud)
也许有更好的方法来做这类事情,因为通过这个实现,我总是必须完全重新启动 rollup 来执行我的插件
| 归档时间: |
|
| 查看次数: |
7656 次 |
| 最近记录: |