1

我刚开始使用 SystemJS 和 ES6 模块加载器。我有一个简单的测试模块:

var Feature = {
    init : function(){
        console.log("Feature.init");
    }
};
export {Feature};

然后导入

System.import('js/feature.js').then(function(Feature){
    Feature.init();
});

然后引发错误

Uncaught (in promise) TypeError: Feature.init is not a function

但是,如果我像这样调用 init 它会起作用

System.import('js/feature.js').then(function(Feature){
    Feature.Feature.init();
});    

我不确定父对象来自哪里,或者是否有办法绕过它。我错过了什么?

4

1 回答 1

0

这一行:

export {Feature};

转译为:

module.exports.Feature = Feature;

您可能正在寻找 ES6default关键字:

export default Feature;

转换为:

module.exports = Feature;
于 2015-12-17T17:22:04.250 回答