我有main.js文件,它导入ES6模块,而这些模块又依赖于其他模块。我使用rollup.js将所有模块捆绑到单个文件中。
如何获取main.js所依赖的所有文件的列表?
我想在gulp.watch中使用此列表自动运行汇总任务,并在每次更改任何模块时更新捆绑包。我知道我可以看整个/ js目录,但有没有办法更具体?
答案 0 :(得分:3)
bundle
对象包含modules
属性,该属性是表示其包含的模块的对象列表。所以如果你有这样的文件......
// src/main.js
import foo from './foo.js';
console.log( foo );
// src/foo.js
export default 42;
...你可以像这样获得ID:
rollup.rollup({
entry: 'src/main.js'
}).then( bundle => {
console.log( bundle.modules );
// [{
// id: 'path/to/src/main.js'
// },{
// id: 'path/to/src/foo.js'
// }]
});
您可以使用它来确定要观看的文件。