在Ember.computed.map中设置Scope / Binding / this

时间:2017-07-03 21:56:54

标签: javascript ember.js

我想知道是否有可能将this范围内的Ember.computed.map范围绑定到模型实例而不是模块本身。

例如,我想写一些类似的东西:

export default Ember.Object.extend({
    property1: valueWhichChangesWithModel1,
    property2: valueWhichChangesWithModel2,
    helperProperty: Ember.computed('property1', function () {
        const property = this.get('property1');
        return [whatever(property)];
    })
    mapFunction: Ember.computed.map('helperProperty', 'property2', function (value, index)  {
        return stuff(value, this.get('property2'));
    })
})

但是,this.get('property2')始终失败,因为this绑定到模块,而不是模型对象。

我尝试的所有常规绑定技巧都没有让我访问模型实例,例如:我们bindapply在函数的不同位置。我不确定我是否恰好没有找到合适的位置,如果有另一种解决方法,或者只是知道这是不可能的。我在Ember的文档中找不到任何关于如何处理此问题的参考资料。感谢任何人的建议!

0 个答案:

没有答案