Я использую следующий нокаут observableArray и код вычисляемого столбца, но пользовательский интерфейс (для вычисляемого с привязкой к данным) не обновляется, когда я помещаю значения в наблюдаемый массив. Пожалуйста, посмотрите мой пример jsFiddle.
Есть ли лучший способ передать значения в observableArray и обновить пользовательский интерфейс через вычисляемый? Заранее спасибо.
HTML:
<html>
<head>
<script src="http://cloud.github.com/downloads/SteveSanderson/knockout/knockout-2.1.0.js" ></script>
</head>
<body>
<div data-bind="text: onString"></div>
<div id="test"></div>
</body>
</html>
JavaSript:
function MyData() {
var self = this;
self.currentOnOf = ko.observable(1);
self.available = ko.observableArray();
self.onString = ko.computed(function () {
return "On " + self.currentOnOf() + " of " + self.available ().length;}, self);
}
var data = new MyData();
$(document).ready(function () {
ko.applyBindings(data);
data.available().push(1);
data.available().push(2);
$("#test").html(data.available().length);
});