SystemJS - ES6模块加载器 - 导入过多的层次结构

时间:2015-12-17 17:19:12

标签: javascript dependency-management systemjs es6-module-loader

我刚刚开始使用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();
});    

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

1 个答案:

答案 0 :(得分:0)

这一行:

export {Feature};

透明至:

module.exports.Feature = Feature;

您可能正在寻找ES6 default关键字:

export default Feature;

其中包含:

module.exports = Feature;