我正在使用ES6语法,并希望在NPM中构建一个小模块,它使用另一个npm模块(例如push-js)作为依赖项。目前,我使用汇总来捆绑和生成我的分发文件。
我不确定包含依赖项的正确方法是什么,以便在我自己的模块中使用它。这就是我试过的
import * as Push from 'push.js';
class _MyModule
{
Push.create("Go ahead, click this notification", {
});
}
Rollup会在此代码上触发以下错误:
events.js:160
throw er; // Unhandled 'error' event
^
Error: Unexpected token
我在这里做了一些根本错误的事吗?谢谢你的帮助!如果您需要更多信息,如gulpfile,请告诉我。
答案 0 :(得分:1)
你足够近了。但是,至少在当前的转发器(Babel和co。)中,CommonJS模块导出被视为默认导出。这意味着,您只需导入默认导出(import * as Push
),而不是导入所有单独的实体(import Push
)。
import Push from 'push.js';
class _MyModule
{
constructor() {
Push.create("Go ahead, click this notification", {
});
}
}
如何解决CommonJS和ES模块之间的实际互操作性,尚未最终确定。 See Axel Rauschmayr's blog post on the subject.