我正在通过遵循this presentation中给出的一些提示来优化我的Ember应用程序。我想知道如何将未绑定的属性作为组件和视图的参数。例如
{{my-component arg=unboundProperty}}
我希望unboundProperty
不被绑定,即它将第一个非空值(在路由中的模型已经解析后设置)作为值,但在其值更改时不会传播到组件。我怎样才能做到这一点?
答案 0 :(得分:2)
如果确实需要这样做,可以使用计算属性而不定义依赖关系。计算属性将在第一次请求时计算,然后它永远不会认为它需要更新,因此它永远不会更新。
App.FooController = Ember.ObjectController.extend({
realProperty: 'fooBar',
unboundProperty: function(){
return this.get('realProperty');
}.property()
});
{{my-component arg=unboundProperty}}
您可以在组件中执行相同的操作
App.MyComponentComponent = Ember.Component.extend({
readOnceArg: function(){
return this.get('arg');
}.property()
})