From a98ab55fe836faebcad32371c4140fa3c9f2cede Mon Sep 17 00:00:00 2001 From: sheepluo Date: Mon, 18 Dec 2023 21:44:50 +0800 Subject: [PATCH 01/14] fix(table): uploadFilePercent does not work with autoUpload=false (#2991) * fix(table): uploadFilePercent * fix: lint eorr * fix(upload): image preview --- src/image-viewer/image-viewer.tsx | 1 + src/upload/hooks/useUpload.ts | 12 ++++++++---- src/upload/themes/multiple-flow-list.tsx | 4 +++- src/upload/upload.tsx | 4 +++- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/image-viewer/image-viewer.tsx b/src/image-viewer/image-viewer.tsx index 0dfaaed41..37bf41e7d 100644 --- a/src/image-viewer/image-viewer.tsx +++ b/src/image-viewer/image-viewer.tsx @@ -236,6 +236,7 @@ export default defineComponent({ > this.onImgClick(index)} diff --git a/src/upload/hooks/useUpload.ts b/src/upload/hooks/useUpload.ts index a0fa1fcd9..87d94d059 100644 --- a/src/upload/hooks/useUpload.ts +++ b/src/upload/hooks/useUpload.ts @@ -90,10 +90,9 @@ export default function useUpload(props: TdUploadProps, context: SetupContext) { const uploadFilePercent = (params: { file: UploadFile; percent: number }) => { const { file, percent } = params; - const index = toUploadFiles.value.findIndex((item) => file.raw === item.raw); - const newFiles = [...toUploadFiles.value]; - newFiles[index] = { ...newFiles[index], percent }; - toUploadFiles.value = newFiles; + const operationUploadFiles = autoUpload.value ? toUploadFiles : uploadValue; + const index = operationUploadFiles.value.findIndex((item) => file.raw === item.raw); + operationUploadFiles.value[index] = { ...operationUploadFiles.value[index], percent }; }; const updateFilesProgress = () => { @@ -262,6 +261,10 @@ export default function useUpload(props: TdUploadProps, context: SetupContext) { onFileChange?.(files); } + function onPasteFileChange(e: ClipboardEvent) { + onFileChange?.([...e.clipboardData.files]); + } + /** * 上传文件。对外暴露方法,修改时需谨慎 * @param toFiles 本地上传的文件列表 @@ -452,5 +455,6 @@ export default function useUpload(props: TdUploadProps, context: SetupContext) { cancelUpload, onInnerPreview, innerCancelUpload, + onPasteFileChange, }; } diff --git a/src/upload/themes/multiple-flow-list.tsx b/src/upload/themes/multiple-flow-list.tsx index 6a8ee7afa..9fb765587 100644 --- a/src/upload/themes/multiple-flow-list.tsx +++ b/src/upload/themes/multiple-flow-list.tsx @@ -511,7 +511,9 @@ export default defineComponent({ visible={!!this.currentPreviewFile.length} onClose={this.closePreview} index={this.previewIndex} - onIndexChange={this.previewIndexChange} + on={{ + 'index-change': this.previewIndexChange, + }} props={this.imageViewerProps} > diff --git a/src/upload/upload.tsx b/src/upload/upload.tsx index fd38d33f9..b0058807d 100644 --- a/src/upload/upload.tsx +++ b/src/upload/upload.tsx @@ -41,6 +41,7 @@ export default defineComponent({ innerDisabled, onInnerRemove, onDragFileChange, + onPasteFileChange, } = uploadData; const disabled = computed(() => formDisabled.value || innerDisabled.value); @@ -107,6 +108,7 @@ export default defineComponent({ return { ...uploadData, onUploadPaste, + onPasteFileChange, commonDisplayFileProps, dragProps, uploadClasses, @@ -254,7 +256,7 @@ export default defineComponent({ render() { return ( -
+
Date: Thu, 21 Dec 2023 15:48:03 +0800 Subject: [PATCH 02/14] =?UTF-8?q?feat(card):=20card=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BC=A0=E5=85=A5loadingProps=E5=8F=82?= =?UTF-8?q?=E6=95=B0=20(#2959)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat(card): card组件支持传入loadingProps参数 card组件支持传入loadingProps参数 fix #423 * chore: merge develop * feat(card): card组件支持传入loadingProps参数 card组件支持传入loadingProps参数 fix #423 * refactor(card): props属性用法优化 * chore: update snapshot * chore: update snapshot --------- Co-authored-by: Uyarn --- src/card/_example/custom-loading-props.vue | 20 +++++++ src/card/card.en-US.md | 6 ++- src/card/card.md | 2 + src/card/card.tsx | 18 +++---- src/card/props.ts | 4 ++ src/card/type.ts | 5 ++ test/snap/__snapshots__/csr.test.js.snap | 61 ++++++++++++++++++++++ test/snap/__snapshots__/ssr.test.js.snap | 2 + 8 files changed, 106 insertions(+), 12 deletions(-) create mode 100644 src/card/_example/custom-loading-props.vue diff --git a/src/card/_example/custom-loading-props.vue b/src/card/_example/custom-loading-props.vue new file mode 100644 index 000000000..0c6c62218 --- /dev/null +++ b/src/card/_example/custom-loading-props.vue @@ -0,0 +1,20 @@ + + + diff --git a/src/card/card.en-US.md b/src/card/card.en-US.md index f6d6d9a85..2a9fee03e 100644 --- a/src/card/card.en-US.md +++ b/src/card/card.en-US.md @@ -1,6 +1,7 @@ :: BASE_DOC :: ## API + ### Card Props name | type | default | description | required @@ -17,9 +18,10 @@ header | String / Slot / Function | - | Typescript:`string \| TNode`。[see mo headerBordered | Boolean | false | \- | N hoverShadow | Boolean | false | \- | N loading | Boolean / Slot / Function | false | Typescript:`boolean \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-vue/blob/develop/src/common.ts) | N +loadingProps | Object | - | Loading Component Props。Typescript:`LoadingProps`,[Loading API Documents](./loading?tab=api)。[see more ts definition](https://github.com/Tencent/tdesign-vue/tree/develop/src/card/type.ts) | N shadow | Boolean | false | \- | N -size | String | medium | options:medium/small | N +size | String | medium | options: medium/small | N status | String | - | \- | N subtitle | String / Slot / Function | - | card subtitle。Typescript:`string \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-vue/blob/develop/src/common.ts) | N -theme | String | normal | options:normal/poster1/poster2 | N +theme | String | normal | options: normal/poster1/poster2 | N title | String / Slot / Function | - | card title。Typescript:`string \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-vue/blob/develop/src/common.ts) | N diff --git a/src/card/card.md b/src/card/card.md index 9e395aa49..d727190ae 100644 --- a/src/card/card.md +++ b/src/card/card.md @@ -1,6 +1,7 @@ :: BASE_DOC :: ## API + ### Card Props 名称 | 类型 | 默认值 | 说明 | 必传 @@ -17,6 +18,7 @@ header | String / Slot / Function | - | 卡片顶部内容,优先级高于其 headerBordered | Boolean | false | 头部是否带分割线,仅在有header时有效 | N hoverShadow | Boolean | false | hover时是否有阴影 | N loading | Boolean / Slot / Function | false | 加载状态,值为 true 会根据不同的布局显示不同的加载状态,值为 false 则表示非加载状态。也可以使用 Sketon 组件完全自定义加载态呈现内容。TS 类型:`boolean \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-vue/blob/develop/src/common.ts) | N +loadingProps | Object | - | 透传加载组件(Loading)全部属性。TS 类型:`LoadingProps`,[Loading API Documents](./loading?tab=api)。[详细类型定义](https://github.com/Tencent/tdesign-vue/tree/develop/src/card/type.ts) | N shadow | Boolean | false | 是否显示卡片阴影,默认不显示 | N size | String | medium | 尺寸。可选项:medium/small | N status | String | - | 卡片状态内容,仅在操作区域不在顶部时有效(即 `theme=poster2` ) | N diff --git a/src/card/card.tsx b/src/card/card.tsx index 27acdce7c..df5a094fa 100644 --- a/src/card/card.tsx +++ b/src/card/card.tsx @@ -136,16 +136,7 @@ export default defineComponent({ }, }, render() { - if (this.loading) { - return renderTNodeJSX(this, 'loading', { - defaultNode: ( - -
-
- ), - }); - } - return ( + const content = (
{this.isHeaderRender ? this.renderHeader() : null} {this.showCover ? this.renderCover() : null} @@ -158,5 +149,12 @@ export default defineComponent({ )}
); + + if (this.loading) { + return renderTNodeJSX(this, 'loading', { + defaultNode: {content}, + }); + } + return content; }, }); diff --git a/src/card/props.ts b/src/card/props.ts index 664f45bec..5da9f3d8e 100644 --- a/src/card/props.ts +++ b/src/card/props.ts @@ -54,6 +54,10 @@ export default { type: [Boolean, Function] as PropType, default: false, }, + /** 透传加载组件(Loading)全部属性 */ + loadingProps: { + type: Object as PropType, + }, /** 是否显示卡片阴影,默认不显示 */ shadow: Boolean, /** 尺寸 */ diff --git a/src/card/type.ts b/src/card/type.ts index 248626e4a..7ca51793a 100644 --- a/src/card/type.ts +++ b/src/card/type.ts @@ -4,6 +4,7 @@ * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC * */ +import { LoadingProps } from '../loading'; import { TNode } from '../common'; export interface TdCardProps { @@ -59,6 +60,10 @@ export interface TdCardProps { * @default false */ loading?: boolean | TNode; + /** + * 透传加载组件(Loading)全部属性 + */ + loadingProps?: LoadingProps; /** * 是否显示卡片阴影,默认不显示 * @default false diff --git a/test/snap/__snapshots__/csr.test.js.snap b/test/snap/__snapshots__/csr.test.js.snap index b7eff2bad..9a4cd1b06 100644 --- a/test/snap/__snapshots__/csr.test.js.snap +++ b/test/snap/__snapshots__/csr.test.js.snap @@ -21208,6 +21208,67 @@ exports[`csr snapshot test > csr test ./src/card/_example/bordered-none.vue 1`]
`; +exports[`csr snapshot test > csr test ./src/card/_example/custom-loading-props.vue 1`] = ` +
+
+
+
+
+
+ 自定义loadingProps Card +
+
+
+
+
+ 卡片内容,以描述性为主,可以是文字、图片或图文组合的形式。按业务需求进行自定义组合。 +
+
+
+ + +
+ + +
+ TDesign努力加载中... +
+
+ +`; + exports[`csr snapshot test > csr test ./src/card/_example/footer.vue 1`] = `
renders ./src/card/_example/bordered.vue correctly exports[`ssr snapshot test > renders ./src/card/_example/bordered-none.vue correctly 1`] = `"
标题
仅有内容区域的卡片形式。卡片内容区域可以是文字、图片、表单、表格等形式信息内容。可使用大中小不同的卡片尺寸,按业务需求进行呈现。
"`; +exports[`ssr snapshot test > renders ./src/card/_example/custom-loading-props.vue correctly 1`] = `"
自定义loadingProps Card
卡片内容,以描述性为主,可以是文字、图片或图文组合的形式。按业务需求进行自定义组合。
TDesign努力加载中...
"`; + exports[`ssr snapshot test > renders ./src/card/_example/footer.vue correctly 1`] = `"
"`; exports[`ssr snapshot test > renders ./src/card/_example/footer-actions.vue correctly 1`] = `"
"`; From c755853ef5dc546a26438fe501f90b2aed7caebc Mon Sep 17 00:00:00 2001 From: sheepluo Date: Fri, 22 Dec 2023 22:04:45 +0800 Subject: [PATCH 03/14] fix(table): affixed bugs, filter icon highlight bug (#2990) * fix(table): affixed bugs * fix(table): fix filter can not highlight with number 0 --- src/hooks/useVirtualScrollNew.ts | 2 +- src/table/filter-controller.tsx | 2 +- src/table/hooks/useAffix.ts | 65 +++++++++++++++++++++++++++++++- 3 files changed, 66 insertions(+), 3 deletions(-) diff --git a/src/hooks/useVirtualScrollNew.ts b/src/hooks/useVirtualScrollNew.ts index 3414fbf71..ef411b7f8 100644 --- a/src/hooks/useVirtualScrollNew.ts +++ b/src/hooks/useVirtualScrollNew.ts @@ -161,7 +161,7 @@ const useVirtualScroll = (container: Ref, params: UseVirtualScrollP // 固定高度场景,可直接通过数据长度计算出最大滚动高度 watch( - () => [[...params.value.data, tScroll, isVirtualScroll, container]], + () => [[...params.value.data, tScroll.value, isVirtualScroll.value, container.value]], () => { if (!isVirtualScroll.value) return; const { data } = params.value; diff --git a/src/table/filter-controller.tsx b/src/table/filter-controller.tsx index 656e7e97d..d9513c65d 100644 --- a/src/table/filter-controller.tsx +++ b/src/table/filter-controller.tsx @@ -207,7 +207,7 @@ export default defineComponent({ const filterValue = this.tFilterValue?.[column.colKey]; const isObjectTrue = typeof filterValue === 'object' && !isEmpty(filterValue); // false is a valid filter value - const isValueExist = (filterValue || filterValue === false) && typeof filterValue !== 'object'; + const isValueExist = ![null, undefined, ''].includes(filterValue) && typeof filterValue !== 'object'; return ( this.primaryTableElement : undefined)} diff --git a/src/table/hooks/useAffix.ts b/src/table/hooks/useAffix.ts index 0adac4130..51daebb7b 100644 --- a/src/table/hooks/useAffix.ts +++ b/src/table/hooks/useAffix.ts @@ -1,6 +1,7 @@ import { computed, ref, watch, onBeforeUnmount, } from 'vue'; +import debounce from 'lodash/debounce'; import { TdBaseTableProps } from '../type'; import { on, off } from '../../utils/dom'; import { AffixProps } from '../../affix'; @@ -27,7 +28,7 @@ export default function useAffix(props: TdBaseTableProps) { const showAffixFooter = ref(true); // 当表格完全滚动消失在视野时,需要隐藏吸底分页器 const showAffixPagination = ref(true); - // 当鼠标按下拖动内容来滚动时,需要更新表头位置 + // 当鼠标按下拖动内容来滚动时,需要更新表头位置(Windows 按下鼠标横向滚动,滚动结束后,再松开鼠标) let isMousedown = false; let isMouseInScrollableArea = false; @@ -189,6 +190,8 @@ export default function useAffix(props: TdBaseTableProps) { on(window, 'mousedown', onMousedown); on(window, 'mouseup', onMouseup); + removeHorizontalScrollListeners(); + if (affixHeaderRef.value) { on(affixHeaderRef.value, 'mouseenter', onHeaderMouseEnter); on(affixHeaderRef.value, 'mouseleave', onHeaderMouseLeave); @@ -210,25 +213,81 @@ export default function useAffix(props: TdBaseTableProps) { } }; + // 记录激活中的 scroll,在新元素点击时要进行抢占 + const activatingTouchScrollListenerCleanups: Array<() => void> = []; + const setupElementTouchScrollListener = (element: HTMLElement) => { + // 思路来源 https://github.com/vueuse/vueuse/blob/main/packages/core/useScroll/index.ts + // 兼容不支持 scrollend 但是又存在惯性滑动的场景,例如 safari + const debounceOffScrollListener = debounce((listener) => { + off(element, 'scroll', listener); + }, 200); + + function onElementTouchScroll() { + onHorizontalScroll(element); + debounceOffScrollListener(onElementTouchScroll); + } + function onElementTouchStart(e: UIEvent) { + if (e.composedPath().includes(element)) { + // 下一次 touch 清理所有的 scroll,不同于 pc 端的 enter,触碰打断是合理的 + activatingTouchScrollListenerCleanups.forEach((cleanup) => cleanup()); + activatingTouchScrollListenerCleanups.length = 0; + // 即使是相同元素也重新绑定,因为 touch 必定带来滑动停止 + on(element, 'scroll', onElementTouchScroll); + // 有可能触碰了一下,没触发 scroll,也销毁 + debounceOffScrollListener(onElementTouchScroll); + activatingTouchScrollListenerCleanups.push(() => { + off(element, 'scroll', onElementTouchScroll); + }); + } + } + + on(element, 'touchstart', onElementTouchStart); + + function removeElementTouchScrollListener() { + off(element, 'touchstart', onElementTouchStart); + } + + return { + removeElementTouchScrollListener, + }; + }; + + // 清理所有 touch 相关的逻辑 + const elementTouchScrollCleanups: Array<() => void> = []; + const cleanupElementTouchScroll = () => { + elementTouchScrollCleanups.forEach((cleanup) => cleanup()); + elementTouchScrollCleanups.length = 0; + }; + const removeHorizontalScrollListeners = () => { off(window, 'mousedown', onMousedown); off(window, 'mouseup', onMouseup); + cleanupElementTouchScroll(); + if (affixHeaderRef.value) { off(affixHeaderRef.value, 'mouseenter', onHeaderMouseEnter); off(affixHeaderRef.value, 'mouseleave', onHeaderMouseLeave); + const { removeElementTouchScrollListener } = setupElementTouchScrollListener(affixHeaderRef.value); + elementTouchScrollCleanups.push(removeElementTouchScrollListener); } if (affixFooterRef.value) { off(affixFooterRef.value, 'mouseenter', onFootMouseEnter); off(affixFooterRef.value, 'mouseleave', onFootMouseLeave); + const { removeElementTouchScrollListener } = setupElementTouchScrollListener(affixFooterRef.value); + elementTouchScrollCleanups.push(removeElementTouchScrollListener); } if (tableContentRef.value) { off(tableContentRef.value, 'mouseenter', onTableContentMouseEnter); off(tableContentRef.value, 'mouseleave', onTableContentMouseLeave); + const { removeElementTouchScrollListener } = setupElementTouchScrollListener(horizontalScrollbarRef.value); + elementTouchScrollCleanups.push(removeElementTouchScrollListener); } if (horizontalScrollbarRef.value) { off(horizontalScrollbarRef.value, 'mouseenter', onScrollbarMouseEnter); off(horizontalScrollbarRef.value, 'mouseleave', onScrollbarMouseLeave); + const { removeElementTouchScrollListener } = setupElementTouchScrollListener(tableContentRef.value); + elementTouchScrollCleanups.push(removeElementTouchScrollListener); } }; @@ -268,6 +327,10 @@ export default function useAffix(props: TdBaseTableProps) { onBeforeUnmount(() => { off(document, 'scroll', onDocumentScroll); removeHorizontalScrollListeners(); + affixHeaderRef.value = null; + affixFooterRef.value = null; + horizontalScrollbarRef.value = null; + tableContentRef.value = null; }); const setTableContentRef = (tableContent: HTMLDivElement) => { From 7ec0cb855bf45a5b881087e5083f6ea11045f1f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?w=C5=AB=20y=C4=81ng?= Date: Mon, 25 Dec 2023 20:22:35 +0800 Subject: [PATCH 04/14] chore: fix pagination text (#2996) --- src/_common | 2 +- test/snap/__snapshots__/csr.test.js.snap | 28 ++++++++++++------------ test/snap/__snapshots__/ssr.test.js.snap | 22 +++++++++---------- 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/_common b/src/_common index 77c26a5fe..65f2d586d 160000 --- a/src/_common +++ b/src/_common @@ -1 +1 @@ -Subproject commit 77c26a5fe917e1ce7f58258788328d56d54b8a85 +Subproject commit 65f2d586d49ac75f2708a7d4a326bed53f193eaa diff --git a/test/snap/__snapshots__/csr.test.js.snap b/test/snap/__snapshots__/csr.test.js.snap index 9a4cd1b06..700e856b5 100644 --- a/test/snap/__snapshots__/csr.test.js.snap +++ b/test/snap/__snapshots__/csr.test.js.snap @@ -44112,7 +44112,7 @@ exports[`csr snapshot test > csr test ./src/dialog/_example/base.vue 1`] = `
- 共 30 项数据 + 共 30 条数据
csr test ./src/pagination/_example/base.vue 1`] = `
- 共 36 项数据 + 共 36 条数据
csr test ./src/pagination/_example/base.vue 1`] = `
- 共 36 项数据 + 共 36 条数据
csr test ./src/pagination/_example/customizable.vue
- 共 200 项数据 + 共 200 条数据
csr test ./src/pagination/_example/disabled.vue 1`]
- 共 100 项数据 + 共 100 条数据
csr test ./src/pagination/_example/few.vue 1`] = `
- 共 49 项数据 + 共 49 条数据
csr test ./src/pagination/_example/jump.vue 1`] = `
- 共 101 项数据 + 共 101 条数据
csr test ./src/pagination/_example/mini.vue 1`] = `
- 共 100 项数据 + 共 100 条数据
csr test ./src/pagination/_example/more.vue 1`] = `
- 共 100 项数据 + 共 100 条数据
csr test ./src/pagination/_example/more.vue 1`] = `
- 共 100 项数据 + 共 100 条数据
csr test ./src/pagination/_example/page-num.vue 1`]
- 共 645 项数据 + 共 645 条数据
csr test ./src/pagination/_example/simple.vue 1`] =
- 共 100 项数据 + 共 100 条数据
csr test ./src/pagination/_example/simple-mini.vue
- 共 100 项数据 + 共 100 条数据
csr test ./src/table/_example/base.vue 1`] = `
- 共 28 项数据 + 共 28 条数据
renders ./src/notification/_example/type.vue correc exports[`ssr snapshot test > renders ./src/notification/_example/type4Fn.vue correctly 1`] = `"
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/base.vue correctly 1`] = `"
共 36 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8


共 36 项数据
10 条/页
  • 1
  • 2
  • 3
  • 4
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/base.vue correctly 1`] = `"
共 36 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8


共 36 条数据
10 条/页
  • 1
  • 2
  • 3
  • 4
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/customizable.vue correctly 1`] = `"
共 200 项数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
跳至
/ 10 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/customizable.vue correctly 1`] = `"
共 200 条数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
跳至
/ 10 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/disabled.vue correctly 1`] = `"
共 100 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/disabled.vue correctly 1`] = `"
共 100 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
跳至
/ 20 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/few.vue correctly 1`] = `"
共 49 项数据
10 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/few.vue correctly 1`] = `"
共 49 条数据
10 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/jump.vue correctly 1`] = `"
共 101 项数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
跳至
/ 6 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/jump.vue correctly 1`] = `"
共 101 条数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
跳至
/ 6 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/mini.vue correctly 1`] = `"
共 100 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/mini.vue correctly 1`] = `"
共 100 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/more.vue correctly 1`] = `"
展示首尾页码省略
共 100 项数据
5 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 20
不展示首尾页码省略
共 100 项数据
5 条/页
  • 10
  • 11
  • 12
  • 13
  • 14
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/more.vue correctly 1`] = `"
展示首尾页码省略
共 100 条数据
5 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 20
不展示首尾页码省略
共 100 条数据
5 条/页
  • 10
  • 11
  • 12
  • 13
  • 14
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/page-num.vue correctly 1`] = `"
共 645 项数据
每页 30 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 22
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/page-num.vue correctly 1`] = `"
共 645 条数据
每页 30 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 22
"`; exports[`ssr snapshot test > renders ./src/pagination/_example/pagination-mini.vue correctly 1`] = `"
layout:
size:
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/simple.vue correctly 1`] = `"
共 100 项数据
5 条/页
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/simple.vue correctly 1`] = `"
共 100 条数据
5 条/页
跳至
/ 20 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/simple-mini.vue correctly 1`] = `"
共 100 项数据
5 条/页
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/simple-mini.vue correctly 1`] = `"
共 100 条数据
5 条/页
跳至
/ 20 页
"`; exports[`ssr snapshot test > renders ./src/pagination/_example/total.vue correctly 1`] = `"
共 685 项数据
10 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 69
"`; @@ -971,7 +971,7 @@ exports[`ssr snapshot test > renders ./src/table/_example/affix.vue correctly 1` exports[`ssr snapshot test > renders ./src/table/_example/async-loading.vue correctly 1`] = `"
"`; -exports[`ssr snapshot test > renders ./src/table/_example/base.vue correctly 1`] = `"
申请人
申请状态
签署方式
邮箱地址
申请时间
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-01-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-02-01
王芳
审批过期
纸质签署
p.cumx@rampblpa.ru
2022-03-01
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-04-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-01-01
共 28 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
"`; +exports[`ssr snapshot test > renders ./src/table/_example/base.vue correctly 1`] = `"
申请人
申请状态
签署方式
邮箱地址
申请时间
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-01-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-02-01
王芳
审批过期
纸质签署
p.cumx@rampblpa.ru
2022-03-01
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-04-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-01-01
共 28 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
"`; exports[`ssr snapshot test > renders ./src/table/_example/custom-cell.vue correctly 1`] = `"
"`; From 14fa90bf5f036c40750ad710ea05916dd50ed21f Mon Sep 17 00:00:00 2001 From: betavs <34408516+betavs@users.noreply.github.com> Date: Tue, 26 Dec 2023 18:07:35 +0800 Subject: [PATCH 05/14] fix(radio): the checked state also triggers the change event (#3000) * fix(radio): the checked state also triggers the change event * test(radio): the checked state also triggers the change event --- src/radio/__tests__/vitest-radio.test.jsx | 6 ++---- src/radio/radio.tsx | 3 +++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/radio/__tests__/vitest-radio.test.jsx b/src/radio/__tests__/vitest-radio.test.jsx index e6ae654e1..9093279ab 100644 --- a/src/radio/__tests__/vitest-radio.test.jsx +++ b/src/radio/__tests__/vitest-radio.test.jsx @@ -145,7 +145,7 @@ describe('Radio Component', () => { expect(onChangeFn.mock.calls[0][0]).toBe(true); expect(onChangeFn.mock.calls[0][1].e.type).toBe('click'); }); - it('events.change: checked value is true, without allowUncheck, click radio and trigger change', async () => { + it('events.change: checked value is true, without allowUncheck, click radio and can not trigger change', async () => { const onChangeFn = vi.fn(); const wrapper = mount({ render() { @@ -154,9 +154,7 @@ describe('Radio Component', () => { }); wrapper.find('.t-radio__label').trigger('click'); await wrapper.vm.$nextTick(); - expect(onChangeFn).toHaveBeenCalled(); - expect(onChangeFn.mock.calls[0][0]).toBe(true); - expect(onChangeFn.mock.calls[0][1].e.type).toBe('click'); + expect(onChangeFn).not.toHaveBeenCalled(); }); it('events.click works fine', async () => { diff --git a/src/radio/radio.tsx b/src/radio/radio.tsx index e21f87027..b858e77f6 100644 --- a/src/radio/radio.tsx +++ b/src/radio/radio.tsx @@ -95,6 +95,9 @@ export default mixins(Vue as VueConstructor, classPre checkRadio(e: MouseEvent) { const tChecked = this.getChecked(); const allowUncheck = this.allowUncheck || this.radioGroup?.allowUncheck; + + if (tChecked && !allowUncheck) return; + if (this.radioGroup) { const value = tChecked && allowUncheck ? undefined : this.value; this.radioGroup.handleRadioChange(value, { e }); From d7a3c13fb828423ec777eb790db9cf32eab92487 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?w=C5=AB=20y=C4=81ng?= Date: Tue, 26 Dec 2023 21:11:46 +0800 Subject: [PATCH 06/14] docs: update FAQ (#3002) * docs: update FAQ * chore: update docs --- site/docs/getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/site/docs/getting-started.md b/site/docs/getting-started.md index 96965bb6e..818c1aea8 100644 --- a/site/docs/getting-started.md +++ b/site/docs/getting-started.md @@ -192,4 +192,4 @@ Q: 为什么使用有些组件的时候会出现一些奇怪的错误? A: 使用组件的时候看到这类错误 `vue.runtime.esm.js:4605 [Vue warn]: inject() can only be used inside setup() or functional components.` 说明虽然 `package.json` 中设置的版本号为 `^2.6.14`,但实际上安装了 Vue2.7 的版本,可以在 `node_modules` 目录中检查实际安装的版本号。 -由于 Vue2.7 和 Vue2.6 不兼容,请务必确保自己安装的版本号是 Vue2.6.x。如果您确实需要使用 Vue2.7 请安装 `tdesign-vue@naruto` +由于 tdesign-vue 正常版本中使用的 `@vue/composition-api`,无法在 Vue2.7 中使用,使用 tdesign-vue 正常版本时,请确保自己安装的版本号是 Vue2.6.x。如果您确实需要使用 Vue2.7 请安装 `tdesign-vue@naruto` From b5d796b6d490f980fd8b61fd7227957520daa8a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=93=E6=99=A8?= <2777689609@qq.com> Date: Thu, 28 Dec 2023 00:19:07 +0800 Subject: [PATCH 07/14] =?UTF-8?q?fix(textarea):=20=E5=85=AC=E5=85=B1?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=BD=93=E5=88=9D=E5=A7=8B=E5=A4=84=E4=BA=8E?= =?UTF-8?q?=E9=9A=90=E8=97=8F=E7=8A=B6=E6=80=81=E5=86=8D=E6=AC=A1=E5=8F=AF?= =?UTF-8?q?=E8=A7=86=E5=90=8E=E6=9C=AA=E5=81=9A=E9=AB=98=E5=BA=A6=E5=86=8D?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E7=9A=84=E9=97=AE=E9=A2=98=20(#3003)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(textarea.tsx): 修复textarea在折叠面板内时,高度计算不正确,会出现滚动条的问题 修复用户反馈issue"[Textarea] textarea在折叠面板内时,高度计算不正确,会出现滚动条",issue详情见:https://github.com/Tencent/tdesign-vue/issues/2809 * fix(textarea.tsx): 修复t-textarea公共组件在初始被隐藏时没有做高度计算的问题 t-textarea在部分场景比如t-collapse-panel中使用时,初始化加载时该组件没有高度,但是当再次可视时因为没有再次做高度的计算导致没有获得响应式高度因此出现这个问题. --- src/textarea/textarea.tsx | 40 ++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/src/textarea/textarea.tsx b/src/textarea/textarea.tsx index 219114172..68881ac98 100644 --- a/src/textarea/textarea.tsx +++ b/src/textarea/textarea.tsx @@ -86,7 +86,19 @@ export default mixins(Vue as VueConstructor
接受
  • \\"\\"
    图片加载中
请选择单张图片文件上传
"`; +exports[`ssr snapshot test > renders ./src/form/_example/disabled.vue correctly 1`] = `"
接受
  • \\"\\"
    图片加载中
请选择单张图片文件上传
"`; exports[`ssr snapshot test > renders ./src/form/_example/error-message.vue correctly 1`] = `"
这里可以展示一段说明文字
一句话介绍自己
"`; From 20391001a0afd455e8fcc080cf6a7528b41cec54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?w=C5=AB=20y=C4=81ng?= Date: Tue, 2 Jan 2024 19:04:53 +0800 Subject: [PATCH 13/14] chore: release 1.8.4 (#3015) * chore: release 1.8.4 * chore: changelog's changes --------- Co-authored-by: github-actions[bot] --- CHANGELOG.md | 23 +++++++++++++++++++++++ package.json | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d97b692f5..08a063f91 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,29 @@ toc: false docClass: timeline --- +## 🌈 1.8.4 `2024-01-02` +### 🚀 Features +- `Upload`: 手动上传场景,支持进行粘贴上传 @chaishi ([#2991](https://github.com/Tencent/tdesign-vue/pull/2991)) +- `Card`: 支持传入`loadingProps`参数修改加载状态的展示 @iiimix ([#2959](https://github.com/Tencent/tdesign-vue/pull/2959)) + +### 🐞 Bug Fixes +- `Upload`: @chaishi + - 修复手动上传时,无法更新上传进度问题 ([#2991](https://github.com/Tencent/tdesign-vue/pull/2991)) + - 修复图片预览时,无法切换预览图片问题 ([#2991](https://github.com/Tencent/tdesign-vue/pull/2991)) +- `Table`: @chaishi + - 横向滚动场景,修复吸顶表头在移动端无法跟随滚动的问题 [#2976](https://github.com/Tencent/tdesign-vue/issues/2976) ([#2990](https://github.com/Tencent/tdesign-vue/pull/2990)) + - 横向滚动场景,修复横向滚动在有惯性滚动浏览器中的滚动的问题 ([#2990](https://github.com/Tencent/tdesign-vue/pull/2990)) + - 横向滚动场景,修复在 Windows 场景中,按下鼠标(不松开鼠标)横向滚动时,表头没有跟随滚动的问题 ([#2990](https://github.com/Tencent/tdesign-vue/pull/2990)) + - 修复可筛选表格,修复筛选值为 `0` 时,筛选图表没有高亮的问题,[#2987](https://github.com/Tencent/tdesign-vue/issues/2987) ([#2990](https://github.com/Tencent/tdesign-vue/pull/2990)) +- `Pagination`: 将总数单位 `项` 改为 `条` , 保持内容一致性 @dinghuihua ([#2996](https://github.com/Tencent/tdesign-vue/pull/2996)) +- `Radio`: 处理选中状态也会触发 `change` 事件的问题 @betavs ([#3000](https://github.com/Tencent/tdesign-vue/pull/3000)) +- `Textarea`: 修复组件初始处于隐藏状态,可视后未做高度再计算的问题 @azx1573 ([#3003](https://github.com/Tencent/tdesign-vue/pull/3003)) +- `ImageViewer`: 添加defaultScale @sinbadmaster ([#3013](https://github.com/Tencent/tdesign-vue/pull/3013)) +- `Upload`: 修复 `Form` 的 `disabled` 属性没有作用到上传组件部分按钮的问题 @uyarn ([#3012](https://github.com/Tencent/tdesign-vue/pull/3012)) +- `Select`: 修复`naruto`版本`minCollapsedNum`与`disabled` API的功能异常问题 @uyarn +### 🚧 Others +- `Popup`: 丰富插件使用方式的使用示例 @uyarn ([#3014](https://github.com/Tencent/tdesign-vue/pull/3014)) + ## 🌈 1.8.3 `2023-12-15` ### 🚀 Features - `Upload`: 新增支持 `uploadPastedFiles`,用于控制是否允许用户粘贴文件上传,默认允许 @chaishi ([#2966](https://github.com/Tencent/tdesign-vue/pull/2966)) diff --git a/package.json b/package.json index 9c2120d8e..94a312bec 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "tdesign-vue", "purename": "tdesign", - "version": "1.8.3-naruto", + "version": "1.8.4-naruto", "description": "tdesign-vue", "title": "tdesign-vue", "keywords": [ From 99eab51335b1da08223919e5a4f261674620c26a Mon Sep 17 00:00:00 2001 From: Uyarn Date: Tue, 2 Jan 2024 19:29:43 +0800 Subject: [PATCH 14/14] chore: update snapshot --- src/upload/themes/multiple-flow-list.tsx | 4 +--- test/snap/__snapshots__/csr.test.js.snap | 28 ++++++++++++------------ test/snap/__snapshots__/ssr.test.js.snap | 24 ++++++++++---------- 3 files changed, 27 insertions(+), 29 deletions(-) diff --git a/src/upload/themes/multiple-flow-list.tsx b/src/upload/themes/multiple-flow-list.tsx index 9fb765587..6a8ee7afa 100644 --- a/src/upload/themes/multiple-flow-list.tsx +++ b/src/upload/themes/multiple-flow-list.tsx @@ -511,9 +511,7 @@ export default defineComponent({ visible={!!this.currentPreviewFile.length} onClose={this.closePreview} index={this.previewIndex} - on={{ - 'index-change': this.previewIndexChange, - }} + onIndexChange={this.previewIndexChange} props={this.imageViewerProps} >
diff --git a/test/snap/__snapshots__/csr.test.js.snap b/test/snap/__snapshots__/csr.test.js.snap index 0938d0e0c..0798aabde 100644 --- a/test/snap/__snapshots__/csr.test.js.snap +++ b/test/snap/__snapshots__/csr.test.js.snap @@ -44112,7 +44112,7 @@ exports[`csr snapshot test > csr test ./src/dialog/_example/base.vue 1`] = `
- 共 30 条数据 + 共 30 项数据
csr test ./src/pagination/_example/base.vue 1`] = `
- 共 36 条数据 + 共 36 项数据
csr test ./src/pagination/_example/base.vue 1`] = `
- 共 36 条数据 + 共 36 项数据
csr test ./src/pagination/_example/customizable.vue
- 共 200 条数据 + 共 200 项数据
csr test ./src/pagination/_example/disabled.vue 1`]
- 共 100 条数据 + 共 100 项数据
csr test ./src/pagination/_example/few.vue 1`] = `
- 共 49 条数据 + 共 49 项数据
csr test ./src/pagination/_example/jump.vue 1`] = `
- 共 101 条数据 + 共 101 项数据
csr test ./src/pagination/_example/mini.vue 1`] = `
- 共 100 条数据 + 共 100 项数据
csr test ./src/pagination/_example/more.vue 1`] = `
- 共 100 条数据 + 共 100 项数据
csr test ./src/pagination/_example/more.vue 1`] = `
- 共 100 条数据 + 共 100 项数据
csr test ./src/pagination/_example/page-num.vue 1`]
- 共 645 条数据 + 共 645 项数据
csr test ./src/pagination/_example/simple.vue 1`] =
- 共 100 条数据 + 共 100 项数据
csr test ./src/pagination/_example/simple-mini.vue
- 共 100 条数据 + 共 100 项数据
csr test ./src/table/_example/base.vue 1`] = `
- 共 28 条数据 + 共 28 项数据
renders ./src/form/_example/clear-validate.vue corr exports[`ssr snapshot test > renders ./src/form/_example/custom-validator.vue correctly 1`] = `"
同一个校验方法可输出不同的错误信息和类型,依次输入:1234 观察变化
自定义异步校验方法
"`; -exports[`ssr snapshot test > renders ./src/form/_example/disabled.vue correctly 1`] = `"
接受
  • \\"\\"
    图片加载中
请选择单张图片文件上传
"`; +exports[`ssr snapshot test > renders ./src/form/_example/disabled.vue correctly 1`] = `"
接受
  • \\"\\"
    图片加载中
请选择单张图片文件上传
"`; exports[`ssr snapshot test > renders ./src/form/_example/error-message.vue correctly 1`] = `"
这里可以展示一段说明文字
一句话介绍自己
"`; @@ -707,27 +707,27 @@ exports[`ssr snapshot test > renders ./src/notification/_example/type.vue correc exports[`ssr snapshot test > renders ./src/notification/_example/type4Fn.vue correctly 1`] = `"
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/base.vue correctly 1`] = `"
共 36 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8


共 36 条数据
10 条/页
  • 1
  • 2
  • 3
  • 4
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/base.vue correctly 1`] = `"
共 36 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8


共 36 项数据
10 条/页
  • 1
  • 2
  • 3
  • 4
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/customizable.vue correctly 1`] = `"
共 200 条数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
跳至
/ 10 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/customizable.vue correctly 1`] = `"
共 200 项数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
跳至
/ 10 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/disabled.vue correctly 1`] = `"
共 100 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/disabled.vue correctly 1`] = `"
共 100 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
跳至
/ 20 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/few.vue correctly 1`] = `"
共 49 条数据
10 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/few.vue correctly 1`] = `"
共 49 项数据
10 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/jump.vue correctly 1`] = `"
共 101 条数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
跳至
/ 6 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/jump.vue correctly 1`] = `"
共 101 项数据
20 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
跳至
/ 6 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/mini.vue correctly 1`] = `"
共 100 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/mini.vue correctly 1`] = `"
共 100 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 20
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/more.vue correctly 1`] = `"
展示首尾页码省略
共 100 条数据
5 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 20
不展示首尾页码省略
共 100 条数据
5 条/页
  • 10
  • 11
  • 12
  • 13
  • 14
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/more.vue correctly 1`] = `"
展示首尾页码省略
共 100 项数据
5 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 20
不展示首尾页码省略
共 100 项数据
5 条/页
  • 10
  • 11
  • 12
  • 13
  • 14
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/page-num.vue correctly 1`] = `"
共 645 条数据
每页 30 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 22
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/page-num.vue correctly 1`] = `"
共 645 项数据
每页 30 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 22
"`; exports[`ssr snapshot test > renders ./src/pagination/_example/pagination-mini.vue correctly 1`] = `"
layout:
size:
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/simple.vue correctly 1`] = `"
共 100 条数据
5 条/页
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/simple.vue correctly 1`] = `"
共 100 项数据
5 条/页
跳至
/ 20 页
"`; -exports[`ssr snapshot test > renders ./src/pagination/_example/simple-mini.vue correctly 1`] = `"
共 100 条数据
5 条/页
跳至
/ 20 页
"`; +exports[`ssr snapshot test > renders ./src/pagination/_example/simple-mini.vue correctly 1`] = `"
共 100 项数据
5 条/页
跳至
/ 20 页
"`; exports[`ssr snapshot test > renders ./src/pagination/_example/total.vue correctly 1`] = `"
共 685 项数据
10 条/页
  • 1
  • 10
  • 11
  • 12
  • 13
  • 14
  • 69
"`; @@ -971,7 +971,7 @@ exports[`ssr snapshot test > renders ./src/table/_example/affix.vue correctly 1` exports[`ssr snapshot test > renders ./src/table/_example/async-loading.vue correctly 1`] = `"
"`; -exports[`ssr snapshot test > renders ./src/table/_example/base.vue correctly 1`] = `"
申请人
申请状态
签署方式
邮箱地址
申请时间
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-01-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-02-01
王芳
审批过期
纸质签署
p.cumx@rampblpa.ru
2022-03-01
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-04-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-01-01
共 28 条数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
"`; +exports[`ssr snapshot test > renders ./src/table/_example/base.vue correctly 1`] = `"
申请人
申请状态
签署方式
邮箱地址
申请时间
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-01-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-02-01
王芳
审批过期
纸质签署
p.cumx@rampblpa.ru
2022-03-01
贾明
审批通过
电子签署
w.cezkdudy@lhll.au
2022-04-01
张三
审批失败
纸质签署
r.nmgw@peurezgn.sl
2022-01-01
共 28 项数据
5 条/页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
"`; exports[`ssr snapshot test > renders ./src/table/_example/custom-cell.vue correctly 1`] = `"
"`;