import uniqueId from '@form-create/utils/lib/unique'; import {makeOptionsRule, makeRequiredRule} from '../../utils/index'; const label = '级联选择器'; const name = 'cascader'; export default { icon: 'icon-cascader', label, name, rule() { return { type: name, field: uniqueId(), title: label, info: '', effect: { fetch: '' }, props: { options: [{ value: 'zhinan', label: '指南', children: [{ value: 'shejiyuanze', label: '设计原则', children: [{ value: 'yizhi', label: '一致' }, { value: 'fankui', label: '反馈' }, { value: 'xiaolv', label: '效率' }, { value: 'kekong', label: '可控' }] }, { value: 'daohang', label: '导航', children: [{ value: 'cexiangdaohang', label: '侧向导航' }, { value: 'dingbudaohang', label: '顶部导航' }] }] }, { value: 'zujian', label: '组件', children: [{ value: 'basic', label: 'Basic', children: [{ value: 'layout', label: 'Layout 布局' }, { value: 'color', label: 'Color 色彩' }, { value: 'typography', label: 'Typography 字体' }, { value: 'icon', label: 'Icon 图标' }, { value: 'button', label: 'Button 按钮' }] }, { value: 'form', label: 'Form', children: [{ value: 'radio', label: 'Radio 单选框' }, { value: 'checkbox', label: 'Checkbox 多选框' }, { value: 'input', label: 'Input 输入框' }, { value: 'input-number', label: 'InputNumber 计数器' }, { value: 'select', label: 'Select 选择器' }, { value: 'cascader', label: 'Cascader 级联选择器' }, { value: 'switch', label: 'Switch 开关' }, { value: 'slider', label: 'Slider 滑块' }, { value: 'time-picker', label: 'TimePicker 时间选择器' }, { value: 'date-picker', label: 'DatePicker 日期选择器' }, { value: 'datetime-picker', label: 'DateTimePicker 日期时间选择器' }, { value: 'upload', label: 'Upload 上传' }, { value: 'rate', label: 'Rate 评分' }, { value: 'form', label: 'Form 表单' }] }] }] } }; }, props() { return [ makeRequiredRule(), makeOptionsRule('props.options', false), { type: 'Object', field: 'props', title: '配置选项', props: { rule: [{ type: 'select', field: 'expandTrigger', title: '次级菜单的展开方式', options: [{label: 'click', value: 'click'}, {label: 'hover', value: 'hover'}] }, {type: 'switch', field: 'multiple', title: '是否多选'}, { type: 'switch', field: 'checkStrictly', title: '是否严格的遵守父子节点不互相关联' }, { type: 'switch', field: 'emitPath', title: '在选中节点改变时,是否返回由该节点所在的各级菜单的值所组成的数组,若设置 false,则只返回该节点的值', value: true }, {type: 'input', field: 'value', title: '指定选项的值为选项对象的某个属性值'}, { type: 'input', field: 'label', title: '指定选项标签为选项对象的某个属性值' }, {type: 'input', field: 'children', title: '指定选项的子选项为选项对象的某个属性值'}, { type: 'input', field: 'disabled', title: '指定选项的禁用为选项对象的某个属性值' }, {type: 'input', field: 'leaf', title: '指定选项的叶子节点的标志位为选项对象的某个属性值'}] } }, { type: 'select', field: 'size', title: '尺寸', options: [{label: 'large', value: 'large'}, {label: 'default', value: 'default'}, { label: 'small', value: 'small' }] }, {type: 'input', field: 'placeholder', title: '输入框占位文本'}, { type: 'switch', field: 'disabled', title: '是否禁用' }, {type: 'switch', field: 'clearable', title: '是否支持清空选项'}, { type: 'switch', field: 'showAllLevels', title: '输入框中是否显示选中值的完整路径', value: true }, {type: 'switch', field: 'collapseTags', title: '多选模式下是否折叠Tag'}, { type: 'input', field: 'separator', title: '选项分隔符' }]; } };