tdesign
tdesign copied to clipboard
treeSelect组件功能需求
这个功能解决了什么问题
1.多选/单选模式都可以支持配置每个选项是否可选; 2.多选模式下可以支持某个选项前是否显示checkbox。
你建议的方案是什么
建议在dataOptions的里加非必填参数的判断,例如是否可选用disable,是否展示checkbox用showCheck: [{ label: '一年级', value: '1', children: [{ label: '1班', value: '11', disable: true, // 置灰文字,表示禁止选择的项 }, { label: '2班', value: '12', showCheck: false, // 如果是多选,不展示前边的checkbox,其实意思也是想表明不可选,但是和disable样式不同,比如多选的时候,只希望能选择最小一级的数据,如果父级都设置为disable的置灰态,就感觉比较奇怪。 }] }]
TreeSelect 底层依赖了 Tree 组件,其实 Tree 本身已经支持了这些禁用、可选的能力了:
只是没有继续向 Tree data 传递这些信息,应该可以考虑后面加一下
以 vue2 为例:https://github.com/Tencent/tdesign-vue/blob/develop/src/tree-select/tree-select.tsx#L324
