Appearance
select下拉框组件
https://element-plus.org/zh-CN/component/select.html
Hidden Title
基础用法:
<s-select v-model="selectVal" :options="options" title="哈哈"></s-select>属性事件插槽简介
基础用法
成华主题
chenghua基础用法
chenghua尺寸
chenghua多选
石景山主题
shijingshan基础用法
shijingshan尺寸
shijingshan多选
通常用法
高度
尺寸
多选--隐藏多余标签的多选
调用change方法
遍历调用change方法
集成绝大部分属性和方法
customLabel自定义显示label
解析html
插槽
disabled, 设置选项不允许选择
table单选
table多选
属性
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
modelValue | 当前值 | array / string / number | - |
value | 选项值字段名 | string | value |
label | 选项显示字段名,支持字符串或多字段数组 | string / array | label |
options | 选项数据 | array | [] |
type | 数据类型,传 simple 时按基础类型数组处理 | string | '' |
multiple | 是否多选 | boolean | false |
showAll | 多选时是否显示全选/反选 | boolean | true |
showPrefix | 是否显示前缀数量信息 | boolean | false |
showQuick | 是否显示上下快速切换按钮 | boolean | true |
size | 选择器尺寸,支持 small / default / large | string | '' |
theme | 选择器主题,支持 default / chenghua / shijingshan | string | default |
title | 左侧标题文案 | string | '' |
compTitleStyle | 左侧标题组件样式 | object | {} |
connect | 多字段 label 拼接符 | string | / |
customLabel | 自定义 label,参数为 { option, index, value } | function | - |
width | 组件宽度 | string / number | '' |
height | 组件高度 | string / number | '' |
disPlaceholder | 禁用态占位文案 | string | '' |
customDisabled | 自定义禁用,参数为 { option, index, value } | (context) => boolean | - |
url | 远程请求地址或方法 | string / function | '' |
urlParams | 远程请求参数 | object | {} |
optionsExpression | 远程结果取值表达式 | string | '' |
emptyColor | 选项为空时是否高亮边框 | boolean | false |
showTooltip | 选中项文本溢出时是否显示 tooltip | boolean | true |
tooltipAttrs | 选中项溢出 tooltip 额外属性 | object | {} |
dangerouslyUseHTMLString | 是否将选中项溢出 tooltip 的内容按 HTML 字符串渲染 | boolean | false |
事件
| 事件名 | 说明 |
|---|---|
update:modelValue | 选中值变化时触发 |
change | 值变化时触发 |
changeSelect | 组件内部切换选项时触发,参数为 { value, label, option, index };多选时各字段为数组,清空时为 undefined |
命名事件函数需要显式标注类型,TypeScript 无法从模板事件反向推断脚本区函数参数。组件库已导出 SSelectChangeContext:
ts
import type { SSelectChangeContext } from 'sybz-components'
function changeSelect({ value, label, option, index }: SSelectChangeContext) {
console.log(value, label, option, index)
}import type { SSelectChangeContext } from 'sybz-components'
function changeSelect({ value, label, option, index }: SSelectChangeContext) {
console.log(value, label, option, index)
}说明
- 组件基于
el-select封装,绝大多数原生属性都可以直接透传。 - 多选模式下支持全选、反选和上下快速切换。