Vue 2.6.0-如何使用新的插槽语法将插槽内容呈现给子组件的命名插槽

时间:2019-02-07 13:27:33

标签: vue.js

要理解我的问题,请看下面的伪代码:

<my-tooltip-wrapper>
  <some-slot-content />
</my-tooltip-wrapper

MyTooltipWrapper包含软件包中的TooltipComponent。但是,这需要另一个广告位来显示我的<some-slot-content />

要查看this as an example使用的旧语法,请看看并尝试使用新的语法。

在更改插槽语法之前,我可以像这样使用它:

//inside of MyTooltipWrapper
<tooltip-component>
   <slot
      name="reference"
      slot="reference"
   />
</tooltip-component>

但是,如何将其更改为新语法?我试过了,但是没用:

<template #reference>
  <slot
    name="reference"
  />
</template>

2 个答案:

答案 0 :(得分:0)

https://jsfiddle.net/a8q09cfh/

<slot-owner>
  <template v-slot:reference>
      Hello world
  </template>
</slot-owner>


Vue.component('slot-owner', {
  template: `
     <div>
        <slot name="reference" />
     </div>
  `
});

答案 1 :(得分:0)

有人问过类似的问题here

最新的commit

已修复