wot-design-uni
Version:
一个基于Vue3+TS开发的uni-app组件库,提供70+高质量组件,支持暗黑模式、国际化和自定义主题。
80 lines (76 loc) • 1.62 kB
text/typescript
import type { PropType } from 'vue'
import { baseProps, makeBooleanProp, makeNumberProp, makeStringProp } from '../common/props'
export type KeyboardMode = 'default' | 'custom' | 'car'
export type KeyType = '' | 'delete' | 'extra' | 'close'
export interface Key {
text?: number | string // key文本
type?: KeyType // key的类型
wider?: boolean // 是否占2个key的宽度
}
export const keyboardProps = {
...baseProps,
/**
* 是否可见
*/
visible: makeBooleanProp(false),
/**
* 绑定的值
*/
modelValue: makeStringProp(''),
/**
* 标题
*/
title: String,
/**
* 键盘模式
*/
mode: makeStringProp<KeyboardMode>('default'),
/**
* 层级
*/
zIndex: makeNumberProp(100),
/**
* 最大长度
*/
maxlength: makeNumberProp(Infinity),
/**
* 是否显示删除键
*/
showDeleteKey: makeBooleanProp(true),
/**
* 是否随机键盘按键顺序
*/
randomKeyOrder: makeBooleanProp(false),
/**
* 确认按钮文本
*/
closeText: String,
/**
* 删除按钮文本
*/
deleteText: String,
/**
* 关闭按钮是否显示加载状态
*/
closeButtonLoading: makeBooleanProp(false),
/**
* 是否显示蒙层
*/
modal: makeBooleanProp(false),
/**
* 是否在点击外部时收起键盘
*/
hideOnClickOutside: makeBooleanProp(true),
/**
* 是否锁定滚动
*/
lockScroll: makeBooleanProp(true),
/**
* 是否在底部安全区域内
*/
safeAreaInsetBottom: makeBooleanProp(true),
/**
* 额外按键
*/
extraKey: [String, Array] as PropType<string | Array<string>>
}