fix(tree): onCheck event lose origin param (#636)
修复Tree的onCheck事件缺少节点参数的问题
| | |
| | | import { basicProps } from './props'; |
| | | import { CreateContextOptions } from '/@/components/ContextMenu'; |
| | | |
| | | import { CheckEvent } from './types'; |
| | | |
| | | interface State { |
| | | expandedKeys: Keys; |
| | | selectedKeys: Keys; |
| | |
| | | state.selectedKeys = v; |
| | | emit('update:selectedKeys', v); |
| | | }, |
| | | onCheck: (v: CheckKeys) => { |
| | | onCheck: (v: CheckKeys, e: CheckEvent) => { |
| | | state.checkedKeys = v; |
| | | const rawVal = toRaw(v); |
| | | emit('update:value', rawVal); |
| | | emit('check', rawVal); |
| | | emit('check', rawVal, e); |
| | | }, |
| | | onRightClick: handleRightClick, |
| | | }; |
| | |
| | | import type { TreeDataItem } from 'ant-design-vue/es/tree/Tree'; |
| | | import type { TreeDataItem, CheckEvent as CheckEventOrigin } from 'ant-design-vue/es/tree/Tree'; |
| | | import { ContextMenuItem } from '/@/hooks/web/useContextMenu'; |
| | | export interface ActionItem { |
| | | render: (record: Recordable) => any; |
| | |
| | | styles?: any; |
| | | items?: ContextMenuItem[]; |
| | | } |
| | | |
| | | export type CheckEvent = CheckEventOrigin; |
| | |
| | | <div class="flex"> |
| | | <BasicTree :treeData="treeData" title="基础示例" class="w-1/3" /> |
| | | |
| | | <BasicTree :treeData="treeData" title="可勾选" :checkable="true" class="w-1/3 mx-4" /> |
| | | <BasicTree |
| | | :treeData="treeData" |
| | | title="可勾选" |
| | | :checkable="true" |
| | | class="w-1/3 mx-4" |
| | | @check="handleCheck" |
| | | /> |
| | | |
| | | <BasicTree |
| | | title="默认展开/勾选示例" |
| | |
| | | export default defineComponent({ |
| | | components: { BasicTree, PageWrapper }, |
| | | setup() { |
| | | return { treeData }; |
| | | function handleCheck(checkedKeys, e) { |
| | | console.log('onChecked', checkedKeys, e); |
| | | } |
| | | return { treeData, handleCheck }; |
| | | }, |
| | | }); |
| | | </script> |