123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- import { defineMixin } from '../../libs/vue'
- import defProps from '../../libs/config/props.js'
- export const props = defineMixin({
- props: {
- modelValue: {
- type: Array,
- default: () => []
- },
- hasInput: {
- type: Boolean,
- default: false
- },
- placeholder: {
- type: String,
- default: () => '请选择'
- },
- // 是否展示picker弹窗
- show: {
- type: Boolean,
- default: () => defProps.picker.show
- },
- // 弹出的方向,可选值为 top bottom right left center
- popupMode: {
- type: String,
- default: () => defProps.picker.popupMode
- },
- // 是否展示顶部的操作栏
- showToolbar: {
- type: Boolean,
- default: () => defProps.picker.showToolbar
- },
- // 顶部标题
- title: {
- type: String,
- default: () => defProps.picker.title
- },
- // 对象数组,设置每一列的数据
- columns: {
- type: Array,
- default: () => defProps.picker.columns
- },
- // 是否显示加载中状态
- loading: {
- type: Boolean,
- default: () => defProps.picker.loading
- },
- // 各列中,单个选项的高度
- itemHeight: {
- type: [String, Number],
- default: () => defProps.picker.itemHeight
- },
- // 取消按钮的文字
- cancelText: {
- type: String,
- default: () => defProps.picker.cancelText
- },
- // 确认按钮的文字
- confirmText: {
- type: String,
- default: () => defProps.picker.confirmText
- },
- // 取消按钮的颜色
- cancelColor: {
- type: String,
- default: () => defProps.picker.cancelColor
- },
- // 确认按钮的颜色
- confirmColor: {
- type: String,
- default: () => defProps.picker.confirmColor
- },
- // 每列中可见选项的数量
- visibleItemCount: {
- type: [String, Number],
- default: () => defProps.picker.visibleItemCount
- },
- // 选项对象中,需要展示的属性键名
- keyName: {
- type: String,
- default: () => defProps.picker.keyName
- },
- // 是否允许点击遮罩关闭选择器
- closeOnClickOverlay: {
- type: Boolean,
- default: () => defProps.picker.closeOnClickOverlay
- },
- // 各列的默认索引
- defaultIndex: {
- type: Array,
- default: () => defProps.picker.defaultIndex
- },
- // 是否在手指松开时立即触发 change 事件。若不开启则会在滚动动画结束后触发 change 事件,只在微信2.21.1及以上有效
- immediateChange: {
- type: Boolean,
- default: () => defProps.picker.immediateChange
- },
- // 工具栏右侧插槽是否开启
- toolbarRightSlot: {
- type: Boolean,
- default: false
- },
- }
- })
|