gpt4 book ai didi

knockout.js - 剑道 knockout : use knockout view model with kendo datasource

转载 作者:行者123 更新时间:2023-12-04 06:20:33 29 4
gpt4 key购买 nike

我正在用 Kendo、Knockout 和 kendo-knockoutjs 库做一些实验。我想将 knockout View 模型与剑道数据源一起使用,并将其绑定(bind)到剑道网格小部件。

在剑道:

html:

<div id="main">
<div id="reportGrid" data-bind="source: gridDataSource"></div>
</div>

javascript:
var billingReportViewModel = kendo.observable({
gridDataSource: new kendo.data.DataSource({data:[{name:"Apple", color:"green"},{name:"Banana", color:"yellow"}]})
});

$("#reportGrid").kendoGrid();

kendo.bind($("#main"), billingReportViewModel);

http://jsfiddle.net/zeQMT/71/

我想要完成的事情:

html 与上面的示例相同。

javascript:
var billingReportViewModel = ko.observable({
gridDataSource: new kendo.data.DataSource({data:[{name:"Apple", color:"green"},{name:"Banana", color:"yellow"}]})
});

$("#reportGrid").kendoGrid();


ko.applyBindings(billingReportViewModel);

http://jsfiddle.net/zeQMT/72/

显然,这是行不通的,因为 knockoutjs 没有 source捆绑。是否可以创建名为 source 的自定义绑定(bind)?这样当前的示例将起作用吗?任何有关工作代码的帮助将不胜感激。谢谢!

最佳答案

我很久以前开始了一个分支来处理直接传入 kendo.data.DataSource 引用,但从未完成修复:https://github.com/rniemeyer/knockout-kendo/issues/6

如果有兴趣,那么我可以尝试解决这个问题。

否则,您可以在绑定(bind)中定义数据源(或传入一个对象)。像:

var billingReportViewModel = ko.observable({
gridDataSource: {data:[{name:"Apple", color:"green"},{name:"Banana", color:"yellow"}]}
});

然后,像这样绑定(bind):
<div id="reportGrid" data-bind="kendoGrid: { data: undefined, dataSource: gridDataSource }"></div>

sample : http://jsfiddle.net/rniemeyer/6SEzp/

关于knockout.js - 剑道 knockout : use knockout view model with kendo datasource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13935484/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com