我需要在Ember.js应用程序中创建一个简单的HTML输入文本字段。此特定输入框的值未绑定到任何特定模型。当输入文本框模糊或失去焦点时,我需要能够运行一些JavaScript。到目前为止,在我的模板中:
{{input valueBinding="pitcherSalary" placeholder=0}}
我尝试通过在控制器中执行以下操作来观察
pitcherSalary
的值,但没有任何运气:MyApp.OptimalController = Ember.ObjectController.extend({
pitcherSalaryObserver: function () {
var self = this;
console.log("changing....");
}.observes('pitcherSalary'),
});
正确的做法是什么?
最佳答案
您说它不受某种模型支持,但是您的控制器却说它受某种模型支持。 Ember可能使您感到困惑,它想保存到应该支持控制器的模型,但找不到任何模型。 ObjectController代理到/从控制器到模型的属性,当它没有模型时,就会大喊滥用。
坏:没有模型的ObjectController
http://emberjs.jsbin.com/niyawido/3/edit
良好:带有模型的ObjectController
http://emberjs.jsbin.com/niyawido/4/edit
好:没有模型的控制器
http://emberjs.jsbin.com/niyawido/2/edit