汇总:要我创建全局变量。如何使用“导出默认值”?

时间:2018-07-17 21:37:54

标签: javascript es6-modules rollup

我有一个要转换为使用汇总的小应用程序。它使用ES6模块-当我运行rollup -c时,它抱怨我的ES6模块之一:

/js/monogram.js (imported by src\main.js)
(!) Missing global variable name
Use output.globals to specify browser global variable names corresponding to external modules
/js/monogram.js (guessing 'drawMonogram')
created public\js\bundle.js in 311ms

模块monogram.js使用:

export default drawMonogram

我将其导入:

import drawMonogram from '/js/monogram.js';

这两个方法均在rollup之前起作用。现在可以了吗?

我是否应该使output.globals来指定全局名称?

为什么需要全局变量?是ES6模块的全球需求(我认为模块应该在功能范围内)还是汇总?

1 个答案:

答案 0 :(得分:2)

Rollup的错误与该问题完全无关。根本无法在该路径下导入模块。在浏览器中使用ES6模块,

import drawMonogram from '/js/monogram.js';

相对于Web服务器根目录。但是在显影框上使用rollup

import drawMonogram from '/js/monogram.js';

被认为是相对于/的。使用相对导入可修复错误。

import drawMonogram from './monogram.js';