Skip to content

筛选胶囊 FilterCapsule ​

用于商品列表顶部的快捷筛选条件切换(如:常购、有活动、当前可售),支持单选与多选两种交互模式。

单选模式(默认) ​

未选中态为 #F2F3F5 浅灰圆角胶囊,选中态切换为安井品牌绿 #44B300 实底白字。

全部商品
常购清单
有活动
当前可售
vue
<template>
  <FilterCapsule :options="options" v-model="selected"/>
</template>

<script setup lang="ts">
import { ref } from 'vue'
import FilterCapsule from '@/components/common/FilterCapsule.vue'

const selected = ref('all')
const options = [
  { label: '全部商品', value: 'all' },
  { label: '常购清单', value: 'often' },
  { label: '有活动', value: 'promo' },
  { label: '当前可售', value: 'instock' }
]
</script>

多选模式(multiple) ​

开启 multiple 属性后,modelValue 绑定数组,支持同时点亮多个筛选条件。

全部商品
常购清单
有活动
当前可售
vue
<FilterCapsule :options="options" multiple v-model="selectedList"/>

API 参数说明 ​

参数名说明类型默认值
modelValue当前选中值(单选为 string | number,多选为数组)string | number | Array必填
options胶囊选项列表({ label, value }[])CapsuleOption[]必填
multiple是否开启多选模式booleanfalse

事件说明 ​

事件名说明回调参数
update:modelValue选中项改变时触发(val)
change点击选项后触发(val)