强制本机Knockout Templating

Jon*_*tes 3 knockout-2.0 knockout.js

我有一个页面需要jQuery.tmpl,但我想使用本机淘汰模板

data-bind="foreach: Comments"
Run Code Online (Sandbox Code Playgroud)

属性.因为我已经包含了jQuery.tmpl,所以禁用了knockout的本机模板; 有没有办法可以强制使用本机功能?

谢谢

RP *_*yer 5

您不能foreach在jQuery.tmpl模板中使用或使用其他控制流绑定.

但是,如果要调用命名模板并强制它使用本机模板引擎,那么您可以执行以下操作:

<div data-bind="template: { name: 'itemsTmpl', templateEngine: new ko.nativeTemplateEngine() }">
</div>

?<script id="itemsTmpl" type="text/html">
    <ul data-bind="foreach: items">
        <li data-bind="text: $data"></li>
    </ul>
</script>
Run Code Online (Sandbox Code Playgroud)

或者new ko.nativeTemplateEngine()在变量中缓存本机模板engine()的副本.