2013-03-29 65 views
0

KnockoutJs如何訂閱最初爲null的值?

<select data-bind="options: SelectedCountry() ? SelectedCountry().Cities : '', 
optionsText: 'Name', value: SelectedCity, optionsCaption: '-- Select a City --'"></select> 

我想訂閱SelectedCity

$(function() 
{ 
    vm.SelectedCity.subscribe(function ... 

淘汰賽拋出一個錯誤「無法獲取屬性未定義或空引用‘訂閱’」

事業的頁面加載時SelectedCity仍然爲空,那麼我如何訂閱它?

我使用的是淘汰賽映射,

var vm = ko.viewmodel.fromModel(JSON.parse(vmJs)); 
ko.applyBindings(vm); 

vmJs在服務器中產生,我可以看到... 「SelectedCity」:空...裏面vmJs。

回答

1

我沒意識到我犯了一個錯誤。我在我的代碼寫

vm.SelectedCity().subscribe 

,而不是

vm.SelectedCity.subscribe 

。所以沒有問題,即使初始值爲空,也可以訂閱觀察值。