淘汰赛自定义元素 - 使用嵌套的html

时间:2014-12-21 16:10:58

标签: knockout.js

我想实现以下目标。我知道我可以通过params对象来做到这一点,但它在眼睛上并不容易。

<custom-element>
    <span>Hello</span>
   </custom-element>

ko.components.register('custom-element', {
viewModel: {
    createViewModel: function(params, componentInfo, NESTED_CONTENT) {
      //do something with span element;
    }

在createViewModel函数中,您将传递一个具有element属性的componentInfo对象。 如果我也可以获得嵌套内容,那就太好了。 我有什么地方可以实现这个目标吗?

1 个答案:

答案 0 :(得分:1)

在淘汰赛版本3.2中无法实现,但是在下一个版本中,在此commit之后,可以随意查看tests。< / p>

现在只能通过params属性将参数传递给组件。但在下一个版本中,您可能会在模板中使用$componentTemplateNodes,如:

ko.components.register('custom-element', {
template:
    '<div data-bind="template: { nodes: $componentTemplateNodes }" />'
}

P.S。它已经是3.3.0-alpha版本的一部分。