我有其中一个时间轴小工具: http://visjs.org/examples/timeline/interaction/eventListeners.html
源数据如下所示:
var items = new vis.DataSet([
{id: 1, content: 'item 1', start: '2013-04-20'},
{id: 2, content: 'item 2', start: '2013-04-14'},
{id: 3, content: 'item 3', start: '2013-04-18'},
{id: 4, content: 'item 4', start: '2013-04-16', end: '2013-04-19'},
{id: 5, content: 'item 5', start: '2013-04-25'},
{id: 6, content: 'item 6', start: '2013-04-27'}
]);
当我将Knockout用于页面上的其他元素时,如何像这样更新?
我应该忽略Knockout并在收到json时用Javascript更新数组吗?
像这样:
function viewModel() {
this.price = ko.observable(0);
this.loadViewModel = function() {
$.getJSON('/pagedata', function(data) {
updateTimeline(data.timeline);
/* update rest of view model */
this.price(data.price);
});
}
}
或者有更合理的方法来做到这一点。
答案 0 :(得分:-1)
Knockout用于将模型连接到视图。时间线小部件内置了这样的连接 - 您相应地更新数据和视图更新,对吧? - 所以你没有理由让我看到它带来淘汰赛。