这是 fiddle - http://jsfiddle.net/iRamesh/36N4m/
不知道为什么计算的 observable 没有返回任何值。我知道如何使它工作,但不确定为什么当前的代码不起作用。请帮忙
最佳答案
计算出的 observable 会在创建时立即进行评估。在您的情况下,viewModel
尚未创建,因此这会导致错误。
几个选择:
- 在初始对象文字之外创建它:
var viewModel = {
firstName: ko.observable("r"),
lastName: ko.observable("j"),
};
viewModel.fullName = ko.computed(function() {
return viewModel.firstName();
});
- 在函数中创建您的 View 模型:
var ViewModel = function() {
this.firstName = ko.observable("r");
this.lastName = ko.observable("j");
this.fullName = ko.computed(function() {
return this.firstName();
}, this);
};
ko.applyBindings(new ViewModel());
关于knockout.js - 请帮助我理解为什么这个计算出的 observable 无法访问 observable。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9305766/