Skip to content

Commit 65926cb

Browse files
DiamondYuanDiamondYuan
and
DiamondYuan
authored
feat: 兼容 updateFade 时 item 为 null 的情况 (#1112)
Co-authored-by: DiamondYuan <[email protected]>
1 parent 9ecbaa3 commit 65926cb

File tree

4 files changed

+31
-0
lines changed

4 files changed

+31
-0
lines changed

compiled/alipay/src/Tabs/index.ts

+3
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ const Tabs = (props: ITabsProps) => {
5656
(id) => `#ant-tabs-bar-item${id}-${props.items.length - 1}`
5757
),
5858
]);
59+
if (!item || !view) {
60+
return;
61+
}
5962
updatePartState({
6063
rightFade: item.left + item.width / 2 > view.width,
6164
});

compiled/wechat/src/Tabs/index.js

+3
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ var Tabs = function (props) {
8787
])];
8888
case 1:
8989
_a = _b.sent(), view = _a[0], item = _a[1];
90+
if (!item || !view) {
91+
return [2 /*return*/];
92+
}
9093
updatePartState({
9194
rightFade: item.left + item.width / 2 > view.width,
9295
});

src/Tabs/index.ts

+3
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ const Tabs = (props: ITabsProps) => {
5656
(id) => `#ant-tabs-bar-item${id}-${props.items.length - 1}`
5757
),
5858
]);
59+
if (!item || !view) {
60+
return;
61+
}
5962
updatePartState({
6063
rightFade: item.left + item.width / 2 > view.width,
6164
});

tests/alipay/Tabs/index.test.ts

+22
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { getInstance, sleep } from 'tests/utils';
22
import { describe, it, expect, vi } from 'vitest';
33
import fmtEvent from 'compiled-alipay/_util/fmtEvent';
4+
import { createSelectorQueryFactory } from 'tests/selector-query';
45

56
describe('Tabs', () => {
67
let selectName = '';
@@ -159,4 +160,25 @@ describe('Tabs', () => {
159160
await sleep(20);
160161
expect(instance.getData().scrollTop - 400 < 1).toBe(true);
161162
});
163+
164+
it('scroll', async () => {
165+
const onChange = vi.fn();
166+
const instance = getInstance(
167+
'Tabs',
168+
{
169+
onChange,
170+
items,
171+
},
172+
{
173+
...my,
174+
createSelectorQuery: createSelectorQueryFactory(() => {
175+
return null;
176+
}),
177+
}
178+
);
179+
180+
instance.callMethod('onScroll', { detail: { scrollTop: 100 } });
181+
await sleep(200);
182+
// 如果正常运行,就说明没有问题
183+
});
162184
});

0 commit comments

Comments
 (0)