先看效果:
组件代码:
<template>
<dl class="filterItem">
<dt>{{label}}:</dt>
<dd :class="{hasMore: hasMore}" ref="item">
<template v-if="firstItemText">
<div class="item" :class="{active: !value.length}" @click="itemClick(firstItemText)">{{firstItemText}}</div>
</template>
<div v-for="(item, i) of list" :key="i" class="item" :class="{active: value.includes(item.value?item.value:item.label?item.label:item)}"
@click="itemClick(item.value?item.value:item.label?item.label:item)">
{{item.label?item.label:item}}
</div>
<template v-if="showMore">