如果调用者未定义自定义组件,则需要设置默认的className。该怎么做?
组件:
Vue.component('the-component', {
template: 'div class="default-class">...</div>',
...
});
<the-component></the-component>
渲染到div class="default-class"></div>
是我想要的。
但是<the-component :class='user-class'></the-component>
实际渲染到div class="user-class default-class"></div>
但我想div class="user-class"></div>
。
答案 0 :(得分:3)
我不确定这是否是最佳答案,但这可以通过执行以下操作来实现:
computed: {
compClass () {
return 'class' in this.$vnode.data ? '' : 'default-class'
},
}
您可以检查是否通过了一个类,如果已经通过,则返回任何内容,否则添加任何默认类。