为组件创建可更改的容器

时间:2016-12-01 14:36:05

标签: vue-component vue.js

我开发组件,但我需要,什么可以改变组件容器的标签名称。 像这样:

<my-component tagName="section"></my-component>

渲染到

<section>... my inner component tags ...</section>

如何制作? 我阅读了有关render()和功能组件的内容,但是使用

创建了组件模板
render(createEl, ctx){
    return createEl(ctx.props.tagName, [createEl('div', [...])])
}

......看起来很可怕和不舒服。

修改 像这样的东西: http://jsbin.com/qozawiwumi/edit?html,output

1 个答案:

答案 0 :(得分:0)

我决定这个问题,使用is =“”和。$ vnode.data.tag来渲染自定义组件包装器。 https://jsbin.com/gifesom/edit?html,output