我正在尝试在淘汰赛 3.2.0 中使用新的组件系统。
目前没有太多文档,但这确实有效。
ko.components.register('price-input', {
template: '<span>price-input</span>'
})
但是,template
绑定允许您指定 DOM 中已经存在的模板名称,例如:
<script type="text/html" id="price_input">
<span>price-input</span>
</script>
然后你可以这样做:
<div data-bind="template: {name: 'price_input'}"></div>
所以我尝试了这个:
ko.components.register('price-input', {
template: {name: 'price_input'}
})
但它不起作用。有没有办法将命名模板与新组件一起使用,或者它们必须内联或加载 AMD。
谢谢
编辑:在 RP Niemeyer 的回答之后,为了澄清,这里是我尝试他回答的模板:
<script type="text/html" id="ifx_price_input">
<h4>PRICE INPUT <span data-bind="text: value"></span></h4>
</script>
这是组件代码:
ko.components.register('price-input', {
template: {element: 'ifx_price_input'}
})
它确实加载了模板,但将其视为转义字符串。
想法?