Vue.js 插槽未更换
我需要更换新的默认插槽我需要更换此插槽。 为什么名为btn的插槽不替换默认组件值?如何修复它 HTMLVue.js 插槽未更换,vue.js,vuejs2,vue-component,Vue.js,Vuejs2,Vue Component,我需要更换新的默认插槽我需要更换此插槽。 为什么名为btn的插槽不替换默认组件值?如何修复它 HTML 看起来您的vue版本无法使用v-slot,请尝试使用slot=btn而不是v-slot:btn在装载过程中,dropdownMix组件将使用id覆盖div下拉排序列表中的所有内容。这就是它不起作用的原因 下面是一个可能的解决方案: 我需要更换这个 let dropdown=Vue.component'dropdown-sort-list'{ 道具:{ }, 数据:函数{ 返回{ } }, 模板
看起来您的vue版本无法使用v-slot,请尝试使用slot=btn而不是v-slot:btn在装载过程中,dropdownMix组件将使用id覆盖div下拉排序列表中的所有内容。这就是它不起作用的原因 下面是一个可能的解决方案: 我需要更换这个 let dropdown=Vue.component'dropdown-sort-list'{ 道具:{ }, 数据:函数{ 返回{ } }, 模板:` 默认插槽 ` }; var dropdownMix=dropdown.extend{ 混合:[{ 数据:函数{ 返回{ itemList:itemListData, } }, }] }; Vue.component'dropdown-sort-list-mix',dropdownMix 新Vue{ el:‘mydiv’ }
在装载过程中,dropdownMix组件用id下拉排序列表覆盖div中的所有内容,这就是为什么它不起作用的原因。这里是一个JSFIDLE,有一个可能的解决方案。如果这是你想要的,我会加上它作为回答谢谢法布吕克斯。它很有效,现在我明白了。很高兴它帮助了你们,我把它作为答案加了上去
<div id="dropdown-sort-list">
<dropdown-sort-list>
<template v-slot:btn>
I need replace this
</template>
</dropdown-sort-list>
</div>
let dropdown = Vue.component('dropdown-sort-list', {
props: {
},
data: function () {
return {
}
},
template: `
<div class="dropdown">
<slot name="btn">
Default Slot
</slot>
</div>
`
});
var dropdownMix = dropdown.extend({
mixins: [{
data: function () {
return {
itemList: itemListData,
}
},
}]
});
var dropdownEx = new dropdownMix({
el: "#dropdown-sort-list",
});