Binding ObjectController上的绑定-Ember.js
当您尝试将绑定添加到Binding ObjectController上的绑定-Ember.js,binding,ember.js,Binding,Ember.js,当您尝试将绑定添加到ObjectController时,它不起作用 App.FailController = Em.ObjectController.extend({ content: null, myBinding: "App.router.myController" // <-- fails }); App.FailController=Em.ObjectController.extend({ 内容:空, myBinding:“App.router.myControl
ObjectController
时,它不起作用
App.FailController = Em.ObjectController.extend({
content: null,
myBinding: "App.router.myController" // <-- fails
});
App.FailController=Em.ObjectController.extend({
内容:空,
myBinding:“App.router.myController”//信用证:这是谁在github完成的
ObjectProxy
将对set
的任何调用委托给content
属性,除非ObjectProxy
实例上存在同名属性。简单的解决方案是在声明绑定之前定义具有所需名称的属性
App.FailController = Em.ObjectController.extend({
my: null,
myBinding: "App.router.myController" // <-- works
});
App.FailController=Em.ObjectController.extend({
我的:空,
myBinding:“App.router.myController”//替代解决方案:
App.FailController = Em.ObjectController.extend({
content: Ember.Object.create(),
my: function() {
return App.router.myController;
}.property('App.router.myController')
});
或者更好:
App.FailController = Em.ObjectController.extend({
content: Ember.Object.create(),
my: Ember.computed.alias('App.router.myController')
});
这是可行的。我认为您也不必显式地设置content:null
App.FailController = Em.ObjectController.extend({
content: Ember.Object.create(),
my: Ember.computed.alias('App.router.myController')
});