似乎我们可以使用打字稿来编写汇总配置文件。说,我可以创建一个名为rollup.config.ts
的文件,其内容为:
import typescript from 'rollup-plugin-typescript2';
export default {
input: 'main.ts',
plugins: [typescript()],
output: {
file: 'bundle.js',
format: 'cjs',
},
external: ['lodash']
}
如果我以rollup -c rollup.config.ts
的方式调用汇总,则可以正常工作。
但是,如果我在其中输入一些内容:
import typescript from 'rollup-plugin-typescript2';
import {RollupFileOptions} from "rollup";
const config: RollupFileOptions = {
input: 'main.ts',
plugins: [typescript()],
output: {
file: 'bundle.js',
format: 'cjs',
},
external: ['lodash']
}
export default config;
它将报告如下错误:
$ rollup -c rollup.config.ts
[!] Error: Unexpected token
rollup.config.ts (4:12)
2: import {RollupFileOptions} from "rollup";
3:
4: const config: RollupFileOptions = {
^
是否有可能使其工作?我尝试将ts-node与
一起使用答案 0 :(得分:6)
您可以创建一个单独的<input id="demo"></input>
<button onclick="saveText()" type="button">save</button>
<p id="test"></p>
,如下所示:
rollup.config.js
您当然需要require('ts-node').register({
compilerOptions: {
module: 'CommonJS'
},
// and other tsconfig.json options as you like
});
module.exports = require('./rollup.config.ts');
。然后运行npm install --save-dev ts-node
,您就可以参加比赛了。
答案 1 :(得分:3)
在此期间,虽然尚不支持,但JSDoc可能有助于键入检查汇总配置的信息。 (仅适用于支持JSDoc的编辑器,例如VSCode)。
/** @type {import('rollup').RollupOptions} */
const options = {
...
};
export default options;
答案 2 :(得分:0)
为了最快的编译,请使用:
npm install sucrase -D
在您的 rollup.config.js
中,执行以下操作:
require('sucrase/register')
module.exports = require('./rollup.config.ts')
答案 3 :(得分:0)
使用 Rollup v2.52.0,您可以将 --configPlugin
选项指定为:
rollup --config rollup.config.ts --configPlugin typescript