import Ember from 'ember';
import myConst from '../utils/constants';
export default Ember.Mixin.create(myConst, {
getFieldId: function(productCode) {
console.log(myConst.MY_METHODS.FIELD_ID); //Not able to access this
}
});
我的constants.js看起来像
var myConst = {};
myConst.MY_METHODS = {
FIELD_ID: "fieldId"
};
export default myConst;
我无法访问mixin中的myConst。我究竟做错了什么 ?
最佳答案
我认为您在这里混淆了两个概念。在您的示例中,myConst
是一个实用程序模块,其中包含一些默认值,对吗?在这种情况下,您不想将其混入mixin(这是您使用Ember.Mixin.create(myConst, {...})
进行的操作。您应该这样做:
import Ember from 'ember';
import myConst from '<app-name>/utils/constants';
export default Ember.Mixin.create({
getFieldId: function(productCode) {
console.log(myConst.MY_METHODS.FIELD_ID);
}
});
如果这不起作用,则可能与您的
import
路径有关。我将仅通过console.log
ing myConst
开始调试,以确保您具有模块中的预期对象。