0

我有以下型号:

Variant = DS.Model.extend
    value: DS.hasMany('value')

    compiledValues: (->
        @get('values').map((v,i,e) -> 
            v.get('option').get('name') + ' : ' + v.get('value')
        ).join("\n")
    ).property('values.@each.value', 'values.@each.option.name')

Value = DS.Model.extend
    option: DS.belongsTo('option')

Option = DS.Model.extend
    values: DS.hasMany('values')

我遇到的问题是计算属性compiledValues仅在我修改其中一个值的值时更新,而不是在选项名称更改时更新。

jsbin演示

我有一个解决方法,可以optionNameValue下面添加 a ,但是我不应该像上面尝试的那样绑定吗?

optionName: Ember.computed.alias('option.name')
4

1 回答 1

1

很高兴您找到了解决方法,文档中明确指出嵌套的依赖属性在使用@each.

http://emberjs.com/guides/object-model/computed-properties-and-aggregate-data/

于 2014-07-16T14:22:34.567 回答