Knockout.js 敲除JS组件;模板未渲染

Knockout.js 敲除JS组件;模板未渲染,knockout.js,element,custom-component,Knockout.js,Element,Custom Component,我一直在尝试这篇精彩的教程(使用组件的子节点),该教程介绍了knockoutjs的新特性“组件的子节点”;但是下面的代码运行时没有任何错误,但似乎没有呈现模板,有人可以帮我吗 提前感谢,, 约翰杰里科 查看模型: 导出默认值{viewModel:{ createViewModel:函数(参数、组件信息){ var分量=[]; var标签=[]; for(componentInfo.templateNodes中的组件){ var temp=componentInfo.templateNodes[

我一直在尝试这篇精彩的教程(使用组件的子节点),该教程介绍了knockoutjs的新特性“组件的子节点”;但是下面的代码运行时没有任何错误,但似乎没有呈现模板,有人可以帮我吗

提前感谢,, 约翰杰里科

查看模型:

导出默认值{viewModel:{
createViewModel:函数(参数、组件信息){
var分量=[];
var标签=[];
for(componentInfo.templateNodes中的组件){
var temp=componentInfo.templateNodes[component];
变量$temp=$(temp);
变量nodeName=$temp.prop(“nodeName”);
if(节点名称!==未定义){
变量id=$temp.attr('id');
tabs.push({id:ko.observable(id),ref:ko.observable('#'+id)});
组件。推送(温度);
}
}
返回{
标签:标签,
组件:组件
}
},
dispose:function(){
}

},模板:templateMarkup}
当您将
节点
传递到
模板
绑定时,它需要一个节点数组。因此,在您的情况下,您需要使模板看起来更像:

 <li>
     <div data-bind="template:{ nodes: [$data] },click: function(){ console.log($data); }"></div>
 </li>

  • 示例小提琴:

    指向教程的链接非常重要且有用。请将示例代码转换为代码片段。这样回答你的问题就容易多了。请看这个:这真的很容易做到。