我正在使用knockout.js框架开发一个应用程序。我有一个这样的视图模型:
var MyViewModel= {
Id: ko.observable(),
CountryCode: ko.observable(),
NormalizedAddress:
{
COUNTRY_CODE: ko.computed(function () { return this.CountryCode(); }),
Street: ko.observable(),
ZipCode: ko.observable(),
AreaCode: ko.observable(),
Town: ko.observable(),
Description: ko.observable()
}
当我运行我的应用程序时,我得到一个例外:
0x800a01b6 - JavaScript运行时错误:对象不支持属性 或方法' CountryCode'
你能帮我解决一下我的问题吗?
非常感谢, 马可
答案 0 :(得分:0)
我使用subscribing feature淘汰赛解决了我的问题。
现在我的代码是这样的:
var MyViewModel= {
Id: ko.observable(),
CountryCode: ko.observable(),
NormalizedAddress:
{
COUNTRY_CODE: ko.observable(),
Street: ko.observable(),
ZipCode: ko.observable(),
AreaCode: ko.observable(),
Town: ko.observable(),
Description: ko.observable()
}
}
MyViewModel.CountryCode.subscribe(function (newValue) {
MyViewModel.NormalizedAddress.COUNTRY_CODE(newValue);
});
所以我可以在更改CountryCode属性时更改值。
由于