通过 CLI 汇总:视为外部依赖
Rollup via CLI: Treating as external dependency
我正在尝试使用 rollupjs 将所有内容捆绑到一个文件中。
main.js
文件:
import * as ex from 'example-export';
ex.alertMe();
example-export.js
文件:
export function alertMe() {
alert('alert!');
};
下面的命令及其响应:
karl@karl-ux303ln:~/dev/sketch/experiment/socketio$ rollup ./public/js/main.js --output ./public/js/bundle.js --format iife --sourcemap inline
Treating 'example-export' as external dependency
No name was provided for external module 'example-export' in options.globals – guessing 'ex'
生成的bundle.js
文件:
(function (ex) {
'use strict';
ex.alertMe();
}(ex));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmpzIiwic291cmNlcyI6WyJtYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGV4IGZyb20gJ2V4YW1wbGUtZXhwb3J0JztcblxuZXguYWxlcnRNZSgpOyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxFQUFFLENBQUMsT0FBTyxFQUFFLDs7In0=
我期待 example-export
模块包含在 bundle.js
文件中。由于这确实是新东西,因此互联网上缺乏适当的例子。
我认为这个问题与 --name
参数 https://github.com/rollup/rollup/wiki/Command-Line-Interface#usage 有关。但是我无法弄清楚它应该如何使用。假设我有多个导出和导入,那看起来会怎样?
相对路径
如果文件在同一目录:
import * as ex from './example-export';
通过NODE_PATH
如果设置了 NODE_PATH env 变量,那么您可以从中添加一个路径。
- 如果
NODE_PATH
等于/home/karl/myprojects/mynodeproject/
- 您尝试访问的图书馆位于
/home/karl/myprojects/mynodeproject/src/lib/my_library.js
- 您正在写入的文件目前正在尝试导入
my_library
位于 /home/karl/myprojects/mynodeproject/src/index.js
然后你可以在index.js
中使用以下内容:
import * as ex from 'src/lib/example-export';
我已经通过 Rollup playground 页面尝试了这个例子,我唯一需要改变的就是改变
import * as ex from 'example-export';
到
import * as ex from './example-export';
我正在尝试使用 rollupjs 将所有内容捆绑到一个文件中。
main.js
文件:
import * as ex from 'example-export';
ex.alertMe();
example-export.js
文件:
export function alertMe() {
alert('alert!');
};
下面的命令及其响应:
karl@karl-ux303ln:~/dev/sketch/experiment/socketio$ rollup ./public/js/main.js --output ./public/js/bundle.js --format iife --sourcemap inline
Treating 'example-export' as external dependency
No name was provided for external module 'example-export' in options.globals – guessing 'ex'
生成的bundle.js
文件:
(function (ex) {
'use strict';
ex.alertMe();
}(ex));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmpzIiwic291cmNlcyI6WyJtYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGV4IGZyb20gJ2V4YW1wbGUtZXhwb3J0JztcblxuZXguYWxlcnRNZSgpOyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxFQUFFLENBQUMsT0FBTyxFQUFFLDs7In0=
我期待 example-export
模块包含在 bundle.js
文件中。由于这确实是新东西,因此互联网上缺乏适当的例子。
我认为这个问题与 --name
参数 https://github.com/rollup/rollup/wiki/Command-Line-Interface#usage 有关。但是我无法弄清楚它应该如何使用。假设我有多个导出和导入,那看起来会怎样?
相对路径
如果文件在同一目录:
import * as ex from './example-export';
通过NODE_PATH
如果设置了 NODE_PATH env 变量,那么您可以从中添加一个路径。
- 如果
NODE_PATH
等于/home/karl/myprojects/mynodeproject/
- 您尝试访问的图书馆位于
/home/karl/myprojects/mynodeproject/src/lib/my_library.js
- 您正在写入的文件目前正在尝试导入
my_library
位于/home/karl/myprojects/mynodeproject/src/index.js
然后你可以在index.js
中使用以下内容:
import * as ex from 'src/lib/example-export';
我已经通过 Rollup playground 页面尝试了这个例子,我唯一需要改变的就是改变
import * as ex from 'example-export';
到
import * as ex from './example-export';