在主页上我有一个网格
<div data-bind="setGridCell: 12,
component: {
name: 'ko.widget.koGrid',
params: {
id: 'gridId',
lazyLoad: true,
autoPopulate: false,
url : someurl;
}">
</div>
和儿童组件
<div data-bind="setGridCell: 12,
component: {
name: 'ko.view.report.confirmationWindow',
params: params()
}">
</div>
子组件将打开一个小窗口,使我可以更改网格组件内的数据(两者都链接到Web服务)。
现在,当我单击子组件上的"提交"按钮时,数据更改将发送到服务并在数据库中更新时,子组件也已关闭。
但是,在显示方面,网格看起来仍然完全相同。我是新手的nockout.js,所以我不确定网格中的数据是什么是最佳方法,以便用户可以立即看到更改。
预先感谢!
(所有内容都在.NET C#应用程序中)
最简单的方法是将可观察到的模型传递给组件并使用组件绑定中的参数。唯一要注意的是,当您将新行插入数据库而没有ID时。保存完成后,您必须设置ID,使组件打开,直到您从消息返回为止。