【问题标题】:How add parent for each slots in vuejs?如何为 vuejs 中的每个插槽添加父级?
【发布时间】:2017-10-05 16:43:31
【问题描述】:

我正在尝试为组件上的每个插槽添加父跨度,但它不起作用。

render(createElement) {
  return createElement('div', this.$slots.default.map(vnode => createElement('span', vnode)));
},

我想得到如下的html

<div>
  <span><img /></span>
  <span><img /></span>
  <span><img /></span>
</div>

但我能得到的最多是

<div>
  <span>
    <img />
    <img />
    <img />
  </span>
</div>

如何解决?

【问题讨论】:

    标签: vue.js vuejs2


    【解决方案1】:

    试试这个。

    render(h){
      return h("div", this.$slots.default.map(v => {
        // eliminate returns, comments
        if (!v.tag)
          return v
    
        return h('span', [v])
      }))
    

    Example.

    【讨论】:

      猜你喜欢
      • 2018-02-21
      • 2017-12-01
      • 2017-12-24
      • 2022-07-16
      • 2021-07-11
      • 2013-02-15
      • 2019-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多