Vue.js中的嵌套组件

时间:2015-08-27 16:17:32

标签: javascript components vue.js

我很难创建嵌套组件,其中每个图层都包含模板:

<wizard>
    <step name="first">Do this step first!</step>
    <step name="second">This should follow</step>
</wizard>

(完整示例:http://jsfiddle.net/maxhq/9o4qxd7t/

我只获取模板,为子组件的父 ,从不为两者工作。

  • 如果父级没有模板且与<... inline-template>一起使用,则会评估子组件(及其模板)(如http://jsfiddle.net/hajkrupo/3/中所述)
  • 如果父项包含模板(即使使用特殊标记<content>),则不会插入/评估子组件

这可以在vue.js中解决吗?

2 个答案:

答案 0 :(得分:1)

如果您使用的是最新的vue.js版本(撰写本文时为1.0.26),则问题是使用<content></content>,因为语法已更改为<slot></slot>

JSFiddle

答案 1 :(得分:0)

没有。 inline-template表示您在那里定义内联模板:

  

当存在此参数时,组件将使用其内部内容作为其模板而不是翻译内容。这允许更灵活的模板创作。

你可以这样做:http://jsfiddle.net/8k335nrf/