使用 Rollup.js 在导出列表后附加代码
Appending Code After Exports List With Rollup.js
我正在使用 Rollup.js 来组合一个 JavaScript 库。我有一个初始化函数,它调用假定库已完全加载的外部代码。我的主要 JS 文件如下所示:
export * from 'file1';
export * from 'file2';
...
// init code here
但是 Rollup 不遵守顺序而是输出:
// init code here
exports.obj1 = obj1;
exports.obj2 = obj2;
...
当初始化代码触发时,每当外部代码试图访问库的任何成员时,它都会生成一个 ReferenceError
,因为它们在调用时尚未导出。
我可以用 setTimeout(init, 1);
之类的东西人为地延迟调用以使其工作,但这绝不是最佳解决方案,每次构建项目时手动移动代码块都非常烦人。
有什么方法可以强制 Rollup.js 在导出块 之后 放置一些代码吗?
Rollup.js 有一个 outro
选项 documented here。
感谢 Rollup GitHub 页面上的 Olsonpm
我正在使用 Rollup.js 来组合一个 JavaScript 库。我有一个初始化函数,它调用假定库已完全加载的外部代码。我的主要 JS 文件如下所示:
export * from 'file1';
export * from 'file2';
...
// init code here
但是 Rollup 不遵守顺序而是输出:
// init code here
exports.obj1 = obj1;
exports.obj2 = obj2;
...
当初始化代码触发时,每当外部代码试图访问库的任何成员时,它都会生成一个 ReferenceError
,因为它们在调用时尚未导出。
我可以用 setTimeout(init, 1);
之类的东西人为地延迟调用以使其工作,但这绝不是最佳解决方案,每次构建项目时手动移动代码块都非常烦人。
有什么方法可以强制 Rollup.js 在导出块 之后 放置一些代码吗?
Rollup.js 有一个 outro
选项 documented here。
感谢 Rollup GitHub 页面上的 Olsonpm