我有以下问题:我在项目中使用iView作为UI lib,我必须从动态组件中的几个相同的iView Button组件中选择 Button ,传递给什么:是组件的道具。以下是我的代码的摘录:
<span class="top-buttons" v-if="showTopButtons">
<Button @click="selectAll">
<Icon type="android-remove-circle"></Icon>
Select All
</Button>
<component :is="???">
<Button @click="moveToDrafts">
<Icon type="android-cancel"></Icon>
Move to Drafts
</Button>
<Button @click="publish">
<Icon type="android-cancel"></Icon>
Publish
</Button>
<Button @click="publish">
<Icon type="android-cancel"></Icon>
Publish
</Button>
</component>
<Button @click="deleteTour">
<Icon type="trash-a"></Icon>
Delete
</Button>
</span>
答案 0 :(得分:1)
:is
道具应该传递一个组件
示例:
<template>
<component v-bind:is="currentTabComponent"></component>
</template>
<script>
import currentTabComponent from './currentTabComponent';
export default {
components: {
currentTabComponent,
},
};
</script>
在您的情况下,它可能更适合使用v-if
而不是
<Button @click="moveToDrafts" v-if="someCondition1">
<Icon type="android-cancel"></Icon>
Move to Drafts
</Button>
<Button @click="publish" v-else-if="someCondition2">
<Icon type="android-cancel"></Icon>
Publish
</Button>
<Button @click="publish" v-else>
<Icon type="android-cancel"></Icon>
Publish
</Button>