diff --git a/packages/components/collapse/__tests__/__snapshots__/collapse.spec.ts.snap b/packages/components/collapse/__tests__/__snapshots__/collapse.spec.ts.snap index bb1d2793b..f8d5a4b58 100644 --- a/packages/components/collapse/__tests__/__snapshots__/collapse.spec.ts.snap +++ b/packages/components/collapse/__tests__/__snapshots__/collapse.spec.ts.snap @@ -3,7 +3,7 @@ exports[`Collapse > panel work > header work 1`] = ` "
-
+
header 0 @@ -27,7 +27,7 @@ exports[`Collapse > panel work > header work 1`] = ` exports[`Collapse > panel work > header work 2`] = ` "
-
+
hello header @@ -50,7 +50,7 @@ exports[`Collapse > panel work > header work 2`] = ` exports[`Collapse > render work 1`] = ` "
-
+
header 0 @@ -69,7 +69,7 @@ exports[`Collapse > render work 1`] = `
-
+
header 1 @@ -88,7 +88,7 @@ exports[`Collapse > render work 1`] = `
-
+
header 2 diff --git a/packages/components/table/src/main/body/BodyCell.tsx b/packages/components/table/src/main/body/BodyCell.tsx index 28b516ad0..8cb6a87ea 100644 --- a/packages/components/table/src/main/body/BodyCell.tsx +++ b/packages/components/table/src/main/body/BodyCell.tsx @@ -98,11 +98,6 @@ export default defineComponent({ } }) - const handleClick = (evt: Event) => { - // see https://github.com/IDuxFE/idux/issues/547 - evt.stopPropagation() - } - return () => { const { column } = props @@ -111,7 +106,7 @@ export default defineComponent({ let title: string | undefined if (type === 'selectable') { - children = renderSelectableChildren(props, slots, selectable, handleClick, config, mergedPagination) + children = renderSelectableChildren(props, slots, selectable, config, mergedPagination) } else if (type === 'indexable') { children = renderIndexableChildren(props, slots, column as TableColumnIndexable, mergedPagination) } else { @@ -209,12 +204,19 @@ function renderSelectableChildren( props: TableBodyCellProps, slots: Slots, selectable: ComputedRef, - onClick: (evt: Event) => void, config: TableConfig, mergedPagination: ComputedRef, ) { const { selected: checked, indeterminate, disabled, isHover, handleSelect: onChange } = props - const { showIndex, multiple, customCell, trigger } = selectable.value! + const { showIndex, multiple, customCell } = selectable.value! + const onClick = (evt: Event) => { + // see https://github.com/IDuxFE/idux/issues/547 + evt.stopPropagation() + // radio 支持反选 + if (!multiple && checked && !disabled && onChange) { + onChange() + } + } if (!checked && !isHover && showIndex) { return renderIndexableChildren(props, slots, config.columnIndexable as TableColumnIndexable, mergedPagination) @@ -222,22 +224,11 @@ function renderSelectableChildren( const customRender = isString(customCell) ? slots[customCell] : customCell if (multiple) { - // 存在trigger时将事件代理到bodyCell进行处理 - const exitTriggerCheckboxProps = { checked, disabled, indeterminate } - const checkboxProps = { ...exitTriggerCheckboxProps, onChange, onClick } - return customRender ? ( - customRender(trigger ? exitTriggerCheckboxProps : checkboxProps) - ) : ( - - ) + const checkboxProps = { checked, disabled, indeterminate, onChange, onClick } + return customRender ? customRender(checkboxProps) : } else { - const exitTriggerRadioProps = { checked, disabled } - const radioProps = { ...exitTriggerRadioProps, onChange, onClick } - return customRender ? ( - customRender(radioProps) - ) : ( - - ) + const radioProps = { checked, disabled, onChange, onClick } + return customRender ? customRender(radioProps) : } } diff --git a/packages/components/table/style/index.less b/packages/components/table/style/index.less index 8e51acf8e..456b6e330 100644 --- a/packages/components/table/style/index.less +++ b/packages/components/table/style/index.less @@ -194,7 +194,7 @@ & tr&-row-selected { &:hover > td { - background-color: @table-body-row-background-color-hover; + background-color: @table-body-row-background-color-hover; } & > td { background: @table-body-row-background-color-selected; @@ -356,4 +356,9 @@ } } } + + // chrome 83: virtual + fixed column + .cdk-virtual-scroll-content { + display: block; + } } diff --git a/packages/components/tree-select/__tests__/__snapshots__/treeSelect.spec.ts.snap b/packages/components/tree-select/__tests__/__snapshots__/treeSelect.spec.ts.snap index 2117decb7..ebfa6f33f 100644 --- a/packages/components/tree-select/__tests__/__snapshots__/treeSelect.spec.ts.snap +++ b/packages/components/tree-select/__tests__/__snapshots__/treeSelect.spec.ts.snap @@ -77,7 +77,7 @@ exports[`TreeSelect > single work > searchFn work 2`] = `
- +
" @@ -94,7 +94,7 @@ exports[`TreeSelect > single work > searchFn work 3`] = `
- +
" @@ -125,7 +125,7 @@ exports[`TreeSelect > single work > searchable work 2`] = `
- +