【发布时间】:2020-11-14 13:06:03
【问题描述】:
我需要使用 ES6 库(Luxon) 并希望将文件编译到 ES5,但 Rollup 将文件添加为 ES6。
该库有一个特殊的/build 文件夹,具有不同的输出格式。
如何配置 Rollup 以利用它而不是对库不做任何事情?
【问题讨论】:
-
你能解释清楚吗?
标签: javascript node.js ecmascript-6 rollup luxon
我需要使用 ES6 库(Luxon) 并希望将文件编译到 ES5,但 Rollup 将文件添加为 ES6。
该库有一个特殊的/build 文件夹,具有不同的输出格式。
如何配置 Rollup 以利用它而不是对库不做任何事情?
【问题讨论】:
标签: javascript node.js ecmascript-6 rollup luxon
首先,这里有两个选择:
/build目录而不是ES6
包的版本,使用带有@rollup/plugin-alias 的别名
我将采用第二种方法,因为这是您要求的方法:
npm i @rollup/plugin-alias
rollup.config.js 导入它import alias from '@rollup/plugin-alias';
plugins:const path = require('path');
module.exports = {
input: 'src/index.js',
output: {
dir: 'output',
format: 'cjs'
},
plugins: [
alias({
entries: [
{ find: 'luxon', replacement: path.resolve(process.cwd(), 'node_modules/luxon/build') },
]
})
]
};
【讨论】:
@rollup/plugin-commonjs 和/或@rollup/plugin-node-resolve,则需要在别名插件之后加载它们。否则在进入别名插件之前,条目将由他们处理。