我正在使用 ES6 导入并使用 Rollup 对其进行转译。
输出是单个捆绑文件。
Rollup 可以配置为生成文件到文件的转译结果吗?
这是我正在使用的当前配置,它显然会输出一个文件。
gulp.task('rollup', function() {
const rollup = require('rollup');
const nodeResolve = require('rollup-plugin-node-resolve');
const JS_INDEX_FILE = 'src/index.js';
return rollup.rollup({
input: JS_INDEX_FILE,
plugins: [
nodeResolve({
browser: true
})
]
}).then(bundle => {
bundle.write({
sourcemap: true,
format: 'cjs',
strict: true,
file: 'bundle.js'
});
});
});
基本上,我想要单独的文件require()
代替import
.
如果您想使用 rollup 将 ES6 转换为 CommonJS 并保留文件和目录结构,您的 rollup 配置可能如下所示:
import { nodeResolve } from "@rollup/plugin-node-resolve";
export default [
{
input: ["src/index.js"],
plugins: [nodeResolve()],
output: [
{
dir: "dist",
format: "cjs",
exports: "named",
preserveModules: true, // Keep directory structure and files
}
]
}
]
See 将 Rollup 与其他工具集成以确定您是否需要@rollup/plugin-node-resolve
插件以及从外部包中“保留”的内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)