Kendo UI - 使用可观察视图模型将模板动态加载到 kendo window

Kendo UI - dynamically load template to kendo window with observable view model

Kendo UI JQuery 问题来了。

我有一个部分视图,其中包含一个 kendo 模板、一个 kendo window 和一个可观察的视图模型。我想要实现的是将模板放在 window 中,然后将其绑定到视图模型,如:

            var kendoDialog = kendo.template($("#window-template").html());
            window.center().open();
            window.content(kendoDialog);
            kendo.bind($("#window-container"), viewModel);

window 已正确创建并且模型已正确填充,但在绑定发生之前这一行:

            window.content(kendoDialog);

抛出描述未定义。

在模板中它只是:

            <div class="col-sm-10">
                #: description #
            </div>

我将如何实现我想要做的事情?

我准备了道场给大家看问题:

https://dojo.telerik.com/OsANOcox

问题是,当您加载模板时,它期望传递某种形式的模型,而目前您并没有那么有效地绑定一个空模型。

所以在您的代码中更改:

window.content(kendoDialog);

window.content(kendoDialog(viewModel));

会将数据加载到模板中。

但是如果您希望通过 MVVM 绑定它,就像您目前想要的那样,那么您需要更改模板,因此它是 binding aware 来自:

 <div class="col-sm-10">  
    #= data.description #
 </div>

 <div class="col-sm-10">
   <span data-bind="html:description"></span>
 </div>

希望这对您有所帮助。