# 全局Widget组件
Widget 组件,需要支持v-model双向绑定,通常可以直接使用ui库的输入组件,如 el-input,针对一些不能直接使用的场景场景提供如下的内置Widget组件:
如下组件在运行时也会在内部直接使用。
- CheckboxesWidget
- RadioWidget
- SelectWidget
- UploadWidget
- TimePickerWidget
- DatePickerWidget
- DateTimePickerWidget
- UploadWidget
- vue3 ant、naiveUi 特有的
提示
vjsf在运行中会自动注册如下全局Widget组件。- vue3 版本使用 v-model使用
model: modelValue - 自定义Widget组件参见
# CheckboxesWidget
复选框组,内部使用 elementUi el-checkbox-group 组件
# props
value/v-modelrequired,类型 [Array]enumOptions数组选项列表,结构如:[{value: '1', label: '选项一'}],value 为值,label 为显示标签
传递其它额外的参数会透传给
el-checkbox-group组件
# RadioWidget
单选框组,内部使用 elementUi el-radio-group 组件
# props
value/v-modelrequired,类型 [String,Number,Boolean]enumOptions数组选项列表,结构如:[{value: '1', label: '选项一'}],value 为值,label 为显示标签
传递其它额外的参数会透传给
el-radio-group组件
# SelectWidget
下拉选择,内部使用 elementUi el-select 组件
# props
value/v-modelrequired,任意类型enumOptions数组选项列表,结构如:[{value: '1', label: '选项一'}],value 为值,label 为显示标签
传递其它额外的参数会透传给
el-select组件
# UploadWidget
- 文件上传组件,支持多文件上传
- 页面体验地址:Playground upload 组件 (opens new window)
# props
value/v-modelrequired,类型:[String, Array]responseFileUrlFunction ,用于处理上传文件接口返回值中提取 url 字段,接受上传接口返回值为参数btnText配置上传按钮文字slots支持传入 VNode 对象,最终传递给 upload 组件slot,用于自定义上传按钮和提示文案(使用方法参见如下DEMO)
传递其它额外的参数会透传给 el-upload 组件
responseFileUrl 默认值如下:
{
responseFileUrl: {
default: res => (res ? (res.url || (res.data && res.data.url)) : ''),
type: [Function]
}
}
如下:使用 ui:slots 重置上传按钮
# TimePickerWidget
内部使用
timPick组件,支持参数透传
# DatePickerWidget
内部使用
DatePicker / DateTimePicker组件,支持参数透传
# DateTimePickerWidget
内部使用
DatePicker / DateTimePicker组件,支持参数透传
# vue3 ant、naiveUi 特有的全局组件
内部使用
DatePicker / DateTimePicker组件,支持参数透
vue3 ant和naiveUi 由于 v-model 默认不使用 model: modelValue,所以对常用的组件做了转换,如下:
| 组件名 | 对应ant组件 | 对应Naive组件 |
|---|---|---|
| InputWidget | a-input | n-input |
| TextAreaWidget | a-textarea | n-input |
| InputNumberWidget | a-input-number | n-input-number |
| AutoCompleteWidget | a-auto-complete | n-auto-complete |
| SliderWidget | a-slider | n-slider |
| SwitchWidget | a-switch | a-switch |
| RateWidget | a-rate | a-rate |
快速转换 modelValue 可参考:转换v-model组件 modelValue 到其它