2

我在我的项目中使用 Ember.js,有时我必须删除所有内容或将每个属性""设置nullEmber.Object.

所以发生的事情是,在模板中,有把手标签链接到一些对象属性({{myProperty}}),所以当对象被清空或每个属性设置为""ornull时,如果属性更新为新的,这个绑定应该仍然存在价值观。

有没有办法做到这一点?有没有办法快速遍历所有属性?

4

2 回答 2

4

(开始写这个想法,这eachAttribute是一种方法Ember.Object,但它却是DS.Model。所以......)

如果您的对象恰好是 Ember DataDS.Model实例,则有一个eachAttribute方法,它采用回调函数。因此,执行您建议的一种方法可能是:

modelobj.eachAttribute(function(propName){
    modelobj.set(propName, null);
});

唯一想到的另一个想法是实例化对象的新“空白”实例,并将其分配到旧的位置......我认为如果你这样做,在大多数情况下车把绑定会正确更新。

于 2013-01-08T08:29:05.900 回答
1

您的应用程序是否可以在模板中使用{{#if}}语句来有条件地显示/隐藏您的属性?

像这样:

{{#if view.showStuff }}
    <p>{{view.myProperty1}}</p>
    <p>{{view.myProperty2}}</p>
    <p>{{view.myProperty3}}</p>
{{else}}
    <p>Not showing content</p>
{{/if}}

如果showStuff为 true,则将呈现您的属性,否则将显示其他 html。

示例http://jsfiddle.net/cteegarden/rHafx/1/

于 2013-01-08T13:47:35.430 回答