KnockoutJs 第一次加载后如何刷新列表?

How to refresh the list in KnockoutJs after it is loaded first time?

我显示的数据列表如下:

<div class="my-table" data-bind="if:(dataList() && dataList().length)">
//render data raw here...

我是 ko 的新手,希望在不重新加载页面的情况下刷新此列表,这可以用 knockout 实现吗?

我相信我可以使用 applyBindingsToNode 之类的方法将新项目添加到列表中,但正在寻找刷新整个列表的方法,因为其中一列中有一些刷新的数字。

您似乎对 Observable Arrays 的基础知识不清楚。

您可以通过将数组作为参数传递给 dataList 分配一个新的数组值:dataList(['one', 'two', 'three'])

您可以使用大多数常用的数组更新函数修改 dataList 的内容:push、pop、shift、unshift、reverse 和 sort。还有替换和删除函数,它们不是标准的数组更新函数。

您使用这些方法对 dataList 所做的任何更新都将反映在您的视图中,假设您评论的 "render data raw here" 部分使用了 dataList.