【问题标题】:Using Kendo Grid with Breeze and Knockout将 Kendo Grid 与 Breeze 和 Knockout 一起使用
【发布时间】:2013-07-09 21:52:16
【问题描述】:

我正在尝试将 KendoUI 网格添加到我的 SPA,我正在使用 Hot Towel 模板。它只是显示为一条线,我不确定我做错了什么。

我已按照此处的示例进行操作: http://kendo-labs.github.io/knockout-kendo/web/Grid.html

    <div data-bind="kendoGrid: items" />

这是一个演示问题的 jsFiddle。 http://jsfiddle.net/Togas/NfK6W

编辑:删除了 durandal 标签,因为这似乎不是问题的一部分

【问题讨论】:

    标签: knockout.js kendo-ui breeze


    【解决方案1】:

    编辑:更新了错误的链接。 HotTowel 基于DurandalJS。您看到http://durandaljs.com/documentation/KendoUI/ 并按照说明操作了吗?

    【讨论】:

    • 该链接将我带到带有搜索框但没有结果的页面。其他 kendoui 控件适用于我的示例,我更新了我的 jsFiddle 以包含 kendoui。
    • 用正确的链接更新了答案。正如您在问题中指出您使用的是热毛巾,问题可能出在 Durandal。
    • 我正在使用淘汰赛剑道绑定,上面的链接说在使用淘汰赛剑道时不要使用这些说明。此外,jsFiddle 显示相同的结果,它没有使用 durandal。
    • 你的正确。根据 Durandal 标签,我得到的印象是这与 Durandal 相关,但似乎并非如此。
    【解决方案2】:

    当您调用 ko.applyBindings 时,viewModel.items 是空的,因此它使用它来绘制网格……这意味着它没有列也没有行。因此,如果您没有在绑定选项中定义任何内容,您会得到一条线。然后,当您的 ajax 调用完成时,它无法重绘。

    用列定义你的网格,并用定义的列将微风实体包装在 rowViewModel 中。

    <div data-bind="kendoGrid: { data: items, groupable: true, sortable: true, columns: [ {field: 'Description',width: 90,title: 'Description'}] }"></div>
    

    http://jsfiddle.net/dcgVA/2/

    【讨论】:

    • 你的小提琴还有两个 kendoGrids,一个在视图之外被绑定,这样一个就不会显示任何东西。我认为这是一个错字。
    • 抱歉,刚看到这个。感谢您的解决方案。
    猜你喜欢
    • 2014-01-03
    • 2013-12-15
    • 1970-01-01
    • 1970-01-01
    • 2015-06-14
    • 2013-05-05
    • 1970-01-01
    • 2017-02-20
    • 2013-03-24
    相关资源
    最近更新 更多