有時候我們需要使用notifySubscribers來強制執行一個observable的子腳本,你可以傳遞一個param來通知subscriberSubscribers,但問題是這個通過的param既不會改變observable的值,也不會傳遞給subsriber ,那麼爲什麼它被使用?我在一些Knockout文檔中看到,例如,在this one中傳遞了一個參數。這是一個jsfiddle code snippet,它驗證了param在任何地方都沒有使用的事實。我錯過了什麼,或者這個參數確實沒有意義?Knockout,爲什麼我們需要notifySubscribers的參數?
守則的jsfiddle HTML
<div data-bind="text: $data.content"></div>
的JavaScript
var viewModel = {
content: ko.observable('original')
};
var cpted = ko.computed(function(){
alert(viewModel.content());
return viewModel.content();
});
ko.applyBindings(viewModel);
viewModel.content.notifySubscribers('new value');
alert(viewModel.content());
我很好奇,爲什麼你想要「強制執行訂戶」,當值沒有改變。如果價值沒有改變,他們在做什麼? – Tyrsius
這個文檔中有一個例子http://knockoutjs.com/documentation/extenders.html,只是搜索notifySubscribers @Tyrsius –