From d7e7d86aeb68edb776da93cae1b90921af7191d2 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Fri, 21 Mar 2025 15:23:41 +0800 Subject: [PATCH 01/11] =?UTF-8?q?fix(badge):=20=E8=A7=A3=E5=86=B3=E4=B8=AD?= =?UTF-8?q?=E6=96=87=E5=81=8F=E4=B8=8A=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/badge/badge.scss | 11 +++-------- src/styles/variables.scss | 2 +- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/packages/badge/badge.scss b/src/packages/badge/badge.scss index 5f904fd2f7..37ae9f41ed 100644 --- a/src/packages/badge/badge.scss +++ b/src/packages/badge/badge.scss @@ -1,6 +1,8 @@ .nut-badge { position: relative; display: inline-flex; + vertical-align: middle; + box-sizing: content-box; width: auto; &-icon { @@ -37,8 +39,7 @@ &-sup { display: inline-flex; - justify-content: center; - height: $badge-height; + text-align: center; min-width: $badge-min-width; padding: $badge-padding; box-sizing: border-box; @@ -54,12 +55,6 @@ &-number { font-family: 'JD'; - /* #ifdef harmony */ - line-height: 12px; - /* #endif */ - /* #ifndef harmony */ - line-height: 13px; - /* #endif */ } &-one { diff --git a/src/styles/variables.scss b/src/styles/variables.scss index 3276b5699d..c8fe50c1eb 100644 --- a/src/styles/variables.scss +++ b/src/styles/variables.scss @@ -1616,7 +1616,7 @@ $badge-background-color: var( $color-primary ) !default; $badge-color: var(--nutui-badge-color, $color-primary-text) !default; -$badge-font-size: var(--nutui-badge-font-size, $font-size-xxs) !default; +$badge-font-size: var(--nutui-badge-font-size, 9px) !default; $badge-border: var( --nutui-badge-border, 1px solid $color-primary-text From 532e0e187236ba9507f093e6749e4ef19eaf9393 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Fri, 21 Mar 2025 18:22:42 +0800 Subject: [PATCH 02/11] =?UTF-8?q?fix:=20css=20=E5=8F=98=E9=87=8F=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/styles/theme-dark.scss | 2 ++ src/styles/theme-default.scss | 2 ++ src/styles/variables.scss | 3 ++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/styles/theme-dark.scss b/src/styles/theme-dark.scss index fc2d1e52dc..ee7ac42279 100644 --- a/src/styles/theme-dark.scss +++ b/src/styles/theme-dark.scss @@ -215,6 +215,8 @@ page { --nutui-font-size-26: 26px; // 字号语义化 + // 徽标文字 + --nutui-font-size-xxxs: var(--nutui-font-size-9); // 标签内文字 --nutui-font-size-xxs: var(--nutui-font-size-10); // 导购或信息密集的次要内容、辅助信息 diff --git a/src/styles/theme-default.scss b/src/styles/theme-default.scss index d1e9ee607d..a80bd66250 100644 --- a/src/styles/theme-default.scss +++ b/src/styles/theme-default.scss @@ -214,6 +214,8 @@ page { --nutui-font-size-26: 26px; // 字号语义化 + // 徽标文字 + --nutui-font-size-xxxs: var(--nutui-font-size-9); // 标签内文字 --nutui-font-size-xxs: var(--nutui-font-size-10); // 导购或信息密集的次要内容、辅助信息 diff --git a/src/styles/variables.scss b/src/styles/variables.scss index c8fe50c1eb..c4e9d80d8d 100644 --- a/src/styles/variables.scss +++ b/src/styles/variables.scss @@ -147,6 +147,7 @@ $font-family: sans-serif !default; // Font +$font-size-xxxs: var(--nutui-font-size-xxxs, 9px) !default; $font-size-xxs: var(--nutui-font-size-xxs, 10px) !default; $font-size-xs: var(--nutui-font-size-xs, 11px) !default; $font-size-s: var(--nutui-font-size-s, 12px) !default; @@ -1616,7 +1617,7 @@ $badge-background-color: var( $color-primary ) !default; $badge-color: var(--nutui-badge-color, $color-primary-text) !default; -$badge-font-size: var(--nutui-badge-font-size, 9px) !default; +$badge-font-size: var(--nutui-badge-font-size, $font-size-xxxs) !default; $badge-border: var( --nutui-badge-border, 1px solid $color-primary-text From feeb8b6f7894a061d2c5a04b15cfee9c7992a279 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Wed, 2 Apr 2025 17:41:44 +0800 Subject: [PATCH 03/11] =?UTF-8?q?feat:=20=E6=8E=A7=E5=88=B6=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E7=8A=B6=E6=80=81=E7=9A=84=E5=9B=BE=E6=A0=87=EF=BC=8C?= =?UTF-8?q?=E4=BC=A0=E5=85=A5=E7=A9=BA=E5=80=BC=E6=97=B6=E7=A6=81=E7=94=A8?= =?UTF-8?q?=20loading=20=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/switch/doc.en-US.md | 2 +- src/packages/switch/doc.md | 2 +- src/packages/switch/doc.taro.md | 2 +- src/packages/switch/doc.zh-TW.md | 2 +- src/packages/switch/switch.taro.tsx | 2 +- src/packages/switch/switch.tsx | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/packages/switch/doc.en-US.md b/src/packages/switch/doc.en-US.md index b4090e42d0..69c868359a 100644 --- a/src/packages/switch/doc.en-US.md +++ b/src/packages/switch/doc.en-US.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | Disabled | `boolean` | `false` | | activeText | Text description when opening | `ReactNode` | `-` | | inactiveText | Text description when closed | `ReactNode` | `-` | -| loadingIcon | Controlled loading state icon | `ReactNode` | `` | +| loadingIcon | Control the loading state icon, disable the loading state when a null | `ReactNode` | `` | | onChange | Trigger when switching switches | `onChange:(value: boolean, event: Event)` | `-` | ## Theming diff --git a/src/packages/switch/doc.md b/src/packages/switch/doc.md index d699265bd2..044ecbd18c 100644 --- a/src/packages/switch/doc.md +++ b/src/packages/switch/doc.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 受控 loading 态图标 | `ReactNode` | `` | +| loadingIcon | 控制加载状态的图标,传入空值时禁用 loading 态 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.taro.md b/src/packages/switch/doc.taro.md index 77a4646b2f..601225a41c 100644 --- a/src/packages/switch/doc.taro.md +++ b/src/packages/switch/doc.taro.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react-taro' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 受控 loading 态图标 | `ReactNode` | `` | +| loadingIcon | 控制加载状态的图标,传入空值时禁用 loading 态 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.zh-TW.md b/src/packages/switch/doc.zh-TW.md index 0f12e4205a..44d109d119 100644 --- a/src/packages/switch/doc.zh-TW.md +++ b/src/packages/switch/doc.zh-TW.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用狀態 | `boolean` | `false` | | activeText | 打開時文字描述 | `ReactNode` | `-` | | inactiveText | 關閉時文字描述 | `ReactNode` | `-` | -| loadingIcon | 受控 loading 態圖標 | `ReactNode` | `` | +| loadingIcon | 控制加載狀態的圖標,當傳入空值時禁用 loading 狀態 | `ReactNode` | `` | | onChange | 切換開關時觸發 | `onChange:(value: boolean, event: Event)` | `-` | ## 主題定製 diff --git a/src/packages/switch/switch.taro.tsx b/src/packages/switch/switch.taro.tsx index e4c7389ae8..0e3bb9693f 100644 --- a/src/packages/switch/switch.taro.tsx +++ b/src/packages/switch/switch.taro.tsx @@ -61,7 +61,7 @@ export const Switch: FunctionComponent> = (props) => { const onClick = () => { if (disabled || changing) return if (onChange) { - setChanging(true) + loadingIcon && setChanging(true) onChange(!value) } setValue(!value) diff --git a/src/packages/switch/switch.tsx b/src/packages/switch/switch.tsx index 91c6c1b46d..43809ea539 100644 --- a/src/packages/switch/switch.tsx +++ b/src/packages/switch/switch.tsx @@ -59,7 +59,7 @@ export const Switch: FunctionComponent> = (props) => { const onClick = () => { if (disabled || changing) return if (onChange) { - setChanging(true) + loadingIcon && setChanging(true) onChange(!value) } setValue(!value) From cdac7884ab4475acecf6bfdc4c54664b60354966 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 17:41:40 +0800 Subject: [PATCH 04/11] fix: modify cr --- src/packages/switch/demos/h5/demo2.tsx | 18 +++++++++--------- src/packages/switch/demos/taro/demo2.tsx | 19 ++++++++++--------- src/packages/switch/doc.en-US.md | 1 - src/packages/switch/doc.md | 1 - src/packages/switch/doc.taro.md | 1 - src/packages/switch/doc.zh-TW.md | 1 - src/packages/switch/switch.taro.tsx | 12 ++++++++---- src/packages/switch/switch.tsx | 10 +++++++--- .../doc/docs/react/migrate-from-v2.md | 1 - .../doc/docs/taro/migrate-from-v2.md | 1 - 10 files changed, 34 insertions(+), 31 deletions(-) diff --git a/src/packages/switch/demos/h5/demo2.tsx b/src/packages/switch/demos/h5/demo2.tsx index 973eee37ec..fc9c8a31c4 100644 --- a/src/packages/switch/demos/h5/demo2.tsx +++ b/src/packages/switch/demos/h5/demo2.tsx @@ -4,18 +4,18 @@ import { Cell, Switch, Toast } from '@nutui/nutui-react' const Demo2 = () => { const [checkedAsync, setCheckedAsync] = useState(true) - const mockRequest = (): Promise => { - return new Promise((resolve) => { + const onChangeAsync = async (value: boolean) => { + Toast.show(`2秒后异步触发 ${value}`) + const res = await new Promise((resolve) => { setTimeout(() => { - resolve() + resolve(true) }, 2000) }) - } - - const onChangeAsync = async (value: boolean) => { - Toast.show(`2秒后异步触发 ${value}`) - await mockRequest() - setCheckedAsync(value) + if (!res) { + throw new Error() + } else { + setCheckedAsync(value) + } } return ( diff --git a/src/packages/switch/demos/taro/demo2.tsx b/src/packages/switch/demos/taro/demo2.tsx index 58214bb5fe..9a76e8c8d7 100644 --- a/src/packages/switch/demos/taro/demo2.tsx +++ b/src/packages/switch/demos/taro/demo2.tsx @@ -5,19 +5,20 @@ const Demo2 = () => { const [checkedAsync, setCheckedAsync] = useState(true) const [value, setValue] = useState(false) const [showToast, setShowToast] = useState(false) - const mockRequest = (): Promise => { - return new Promise((resolve) => { - setTimeout(() => { - resolve() - }, 2000) - }) - } const onChangeAsync = async (value: boolean) => { setValue(value) setShowToast(true) - await mockRequest() - setCheckedAsync(value) + const res = await new Promise((resolve) => { + setTimeout(() => { + resolve(true) + }, 2000) + }) + if (!res) { + throw new Error() + } else { + setCheckedAsync(value) + } } return ( <> diff --git a/src/packages/switch/doc.en-US.md b/src/packages/switch/doc.en-US.md index 69c868359a..77a2603de2 100644 --- a/src/packages/switch/doc.en-US.md +++ b/src/packages/switch/doc.en-US.md @@ -77,7 +77,6 @@ import { Switch } from '@nutui/nutui-react' | disabled | Disabled | `boolean` | `false` | | activeText | Text description when opening | `ReactNode` | `-` | | inactiveText | Text description when closed | `ReactNode` | `-` | -| loadingIcon | Control the loading state icon, disable the loading state when a null | `ReactNode` | `` | | onChange | Trigger when switching switches | `onChange:(value: boolean, event: Event)` | `-` | ## Theming diff --git a/src/packages/switch/doc.md b/src/packages/switch/doc.md index 044ecbd18c..35f78c57b1 100644 --- a/src/packages/switch/doc.md +++ b/src/packages/switch/doc.md @@ -77,7 +77,6 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 控制加载状态的图标,传入空值时禁用 loading 态 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.taro.md b/src/packages/switch/doc.taro.md index 601225a41c..5ff506aa74 100644 --- a/src/packages/switch/doc.taro.md +++ b/src/packages/switch/doc.taro.md @@ -77,7 +77,6 @@ import { Switch } from '@nutui/nutui-react-taro' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 控制加载状态的图标,传入空值时禁用 loading 态 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.zh-TW.md b/src/packages/switch/doc.zh-TW.md index 44d109d119..e6ccd1f303 100644 --- a/src/packages/switch/doc.zh-TW.md +++ b/src/packages/switch/doc.zh-TW.md @@ -77,7 +77,6 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用狀態 | `boolean` | `false` | | activeText | 打開時文字描述 | `ReactNode` | `-` | | inactiveText | 關閉時文字描述 | `ReactNode` | `-` | -| loadingIcon | 控制加載狀態的圖標,當傳入空值時禁用 loading 狀態 | `ReactNode` | `` | | onChange | 切換開關時觸發 | `onChange:(value: boolean, event: Event)` | `-` | ## 主題定製 diff --git a/src/packages/switch/switch.taro.tsx b/src/packages/switch/switch.taro.tsx index 0e3bb9693f..f39076de1f 100644 --- a/src/packages/switch/switch.taro.tsx +++ b/src/packages/switch/switch.taro.tsx @@ -34,7 +34,7 @@ export const Switch: FunctionComponent> = (props) => { const classPrefix = 'nut-switch' const rtl = useRtl() - + console.log('checked', checked) const [value, setValue] = usePropsValue({ value: checked, defaultValue: defaultChecked, @@ -58,11 +58,15 @@ export const Switch: FunctionComponent> = (props) => { ]) } - const onClick = () => { + const onClick = async () => { if (disabled || changing) return if (onChange) { - loadingIcon && setChanging(true) - onChange(!value) + setChanging(true) + try { + await onChange(!value) + } catch (e) { + setChanging(false) + } } setValue(!value) } diff --git a/src/packages/switch/switch.tsx b/src/packages/switch/switch.tsx index 43809ea539..b8a9d487fe 100644 --- a/src/packages/switch/switch.tsx +++ b/src/packages/switch/switch.tsx @@ -56,11 +56,15 @@ export const Switch: FunctionComponent> = (props) => { ]) } - const onClick = () => { + const onClick = async () => { if (disabled || changing) return if (onChange) { - loadingIcon && setChanging(true) - onChange(!value) + setChanging(true) + try { + await onChange(!value) + } catch (e) { + setChanging(false) + } } setValue(!value) } diff --git a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md index 61559a9017..6411a46af3 100644 --- a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md @@ -238,7 +238,6 @@ plugins: [ - `activeText` 属性类型更改为`ReactNode` - `inactiveText` 属性类型更改为 `ReactNode` -- 新增 `loadingIcon` 属性,受控 loading 态图标 [//]: # '#### Toast' diff --git a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md index fa1bde064e..5f3c8bfa35 100644 --- a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md @@ -237,7 +237,6 @@ plugins: [ - `activeText` 属性类型更改为`ReactNode` - `inactiveText` 属性类型更改为 `ReactNode` -- 新增 `loadingIcon` 属性,受控 loading 态图标 [//]: # '#### Toast' From 047df8938188a30baf2531b5c94d1e6a35321501 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 17:52:17 +0800 Subject: [PATCH 05/11] fix: remove console --- src/packages/switch/switch.taro.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/packages/switch/switch.taro.tsx b/src/packages/switch/switch.taro.tsx index f39076de1f..1d71905a6d 100644 --- a/src/packages/switch/switch.taro.tsx +++ b/src/packages/switch/switch.taro.tsx @@ -32,9 +32,7 @@ export const Switch: FunctionComponent> = (props) => { ...props, } const classPrefix = 'nut-switch' - const rtl = useRtl() - console.log('checked', checked) const [value, setValue] = usePropsValue({ value: checked, defaultValue: defaultChecked, From 799dcdbe3e2d79d63d1716aaa63d82498e480cee Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 17:58:16 +0800 Subject: [PATCH 06/11] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0demo=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/switch/demos/h5/demo2.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/packages/switch/demos/h5/demo2.tsx b/src/packages/switch/demos/h5/demo2.tsx index fc9c8a31c4..2a6c18a73f 100644 --- a/src/packages/switch/demos/h5/demo2.tsx +++ b/src/packages/switch/demos/h5/demo2.tsx @@ -12,6 +12,7 @@ const Demo2 = () => { }, 2000) }) if (!res) { + // 主动抛出一个错误,用于中断loading态 throw new Error() } else { setCheckedAsync(value) From ad7c5b5d0c6b07334d800a9ea85e282a43f30114 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 18:11:14 +0800 Subject: [PATCH 07/11] feat: update test --- src/packages/switch/__test__/switch.spec.tsx | 8 ++++++-- src/packages/switch/demos/taro/demo2.tsx | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/packages/switch/__test__/switch.spec.tsx b/src/packages/switch/__test__/switch.spec.tsx index 094ee8f66d..b9934d52ac 100644 --- a/src/packages/switch/__test__/switch.spec.tsx +++ b/src/packages/switch/__test__/switch.spec.tsx @@ -63,9 +63,13 @@ test('disabled test', async () => { }) test('loadingIcon test', async () => { - const testFn = vi.fn() const { container } = render( - } onChange={testFn} /> + } + onChange={() => { + throw new Error('Function not implemented.') + }} + /> ) const el: Element | null = container.querySelector('.nut-switch-button') if (el) { diff --git a/src/packages/switch/demos/taro/demo2.tsx b/src/packages/switch/demos/taro/demo2.tsx index 9a76e8c8d7..b190bf6426 100644 --- a/src/packages/switch/demos/taro/demo2.tsx +++ b/src/packages/switch/demos/taro/demo2.tsx @@ -15,6 +15,7 @@ const Demo2 = () => { }, 2000) }) if (!res) { + // 主动抛出一个错误对象,用于中断组件 loading 态 throw new Error() } else { setCheckedAsync(value) From e4c16cfaf6531971e7644345c55938213836056a Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 18:21:12 +0800 Subject: [PATCH 08/11] =?UTF-8?q?fix:=20=E8=BF=98=E5=8E=9Fdoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/switch/doc.en-US.md | 1 + src/packages/switch/doc.md | 1 + src/packages/switch/doc.taro.md | 1 + src/packages/switch/doc.zh-TW.md | 1 + src/sites/sites-react/doc/docs/react/migrate-from-v2.md | 8 ++------ src/sites/sites-react/doc/docs/taro/migrate-from-v2.md | 8 ++------ 6 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/packages/switch/doc.en-US.md b/src/packages/switch/doc.en-US.md index 77a2603de2..1640ec6da2 100644 --- a/src/packages/switch/doc.en-US.md +++ b/src/packages/switch/doc.en-US.md @@ -77,6 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | Disabled | `boolean` | `false` | | activeText | Text description when opening | `ReactNode` | `-` | | inactiveText | Text description when closed | `ReactNode` | `-` | +| loadingIcon | Loading state icon | `ReactNode` | `` | | onChange | Trigger when switching switches | `onChange:(value: boolean, event: Event)` | `-` | ## Theming diff --git a/src/packages/switch/doc.md b/src/packages/switch/doc.md index 35f78c57b1..a90847cfe1 100644 --- a/src/packages/switch/doc.md +++ b/src/packages/switch/doc.md @@ -77,6 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | +| loadingIcon | 控制加载状态的图标 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.taro.md b/src/packages/switch/doc.taro.md index 5ff506aa74..9abaa7f260 100644 --- a/src/packages/switch/doc.taro.md +++ b/src/packages/switch/doc.taro.md @@ -77,6 +77,7 @@ import { Switch } from '@nutui/nutui-react-taro' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | +| loadingIcon | 加载状态的图标 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.zh-TW.md b/src/packages/switch/doc.zh-TW.md index e6ccd1f303..f0c042e8f7 100644 --- a/src/packages/switch/doc.zh-TW.md +++ b/src/packages/switch/doc.zh-TW.md @@ -77,6 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用狀態 | `boolean` | `false` | | activeText | 打開時文字描述 | `ReactNode` | `-` | | inactiveText | 關閉時文字描述 | `ReactNode` | `-` | +| loadingIcon | 加載狀態的圖標 | `ReactNode` | `` | | onChange | 切換開關時觸發 | `onChange:(value: boolean, event: Event)` | `-` | ## 主題定製 diff --git a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md index ebe7e2064f..61559a9017 100644 --- a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md @@ -238,6 +238,7 @@ plugins: [ - `activeText` 属性类型更改为`ReactNode` - `inactiveText` 属性类型更改为 `ReactNode` +- 新增 `loadingIcon` 属性,受控 loading 态图标 [//]: # '#### Toast' @@ -276,12 +277,7 @@ plugins: [ [//]: # '#### ImagePreview' [//]: # '#### NoticeBar' - -#### Popover - -- 废弃的样式变量,这些变量存在于文档,已删除:`--nutui-popover-hover-background-color`、`--nutui-popover-hover-text-color`、`--nutui-popover-border-color` -- 变更样式变量 `--nutui-popover-menu-item-padding` 变更为 `--nutui-popover-padding`,`--nutui-popover-menu-item-width` 变更为 `--nutui-popover-item-width` -- 修订 `location` 的数据类型,使用统一位置类型 `FullPosition` +[//]: # '#### Popover' #### Price diff --git a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md index 409ccb5d12..fa1bde064e 100644 --- a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md @@ -237,6 +237,7 @@ plugins: [ - `activeText` 属性类型更改为`ReactNode` - `inactiveText` 属性类型更改为 `ReactNode` +- 新增 `loadingIcon` 属性,受控 loading 态图标 [//]: # '#### Toast' @@ -275,12 +276,7 @@ plugins: [ [//]: # '#### ImagePreview' [//]: # '#### NoticeBar' - -#### Popover - -- 废弃的样式变量,这些变量存在于文档,已删除:`--nutui-popover-hover-background-color`、`--nutui-popover-hover-text-color`、`--nutui-popover-border-color` -- 变更样式变量 `--nutui-popover-menu-item-padding` 变更为 `--nutui-popover-padding`,`--nutui-popover-menu-item-width` 变更为 `--nutui-popover-item-width` -- 修订 `location` 的数据类型,使用统一位置类型 `FullPosition` +[//]: # '#### Popover' #### Price From 337067adaebe461cb32221fff926cf85233d2e31 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 18:24:01 +0800 Subject: [PATCH 09/11] =?UTF-8?q?fix:=20=E8=BF=98=E5=8E=9Fdoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/switch/doc.en-US.md | 2 +- src/packages/switch/doc.md | 2 +- src/packages/switch/doc.taro.md | 2 +- src/packages/switch/doc.zh-TW.md | 2 +- src/sites/sites-react/doc/docs/react/migrate-from-v2.md | 7 ++++++- src/sites/sites-react/doc/docs/taro/migrate-from-v2.md | 7 ++++++- 6 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/packages/switch/doc.en-US.md b/src/packages/switch/doc.en-US.md index 1640ec6da2..b4090e42d0 100644 --- a/src/packages/switch/doc.en-US.md +++ b/src/packages/switch/doc.en-US.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | Disabled | `boolean` | `false` | | activeText | Text description when opening | `ReactNode` | `-` | | inactiveText | Text description when closed | `ReactNode` | `-` | -| loadingIcon | Loading state icon | `ReactNode` | `` | +| loadingIcon | Controlled loading state icon | `ReactNode` | `` | | onChange | Trigger when switching switches | `onChange:(value: boolean, event: Event)` | `-` | ## Theming diff --git a/src/packages/switch/doc.md b/src/packages/switch/doc.md index a90847cfe1..d699265bd2 100644 --- a/src/packages/switch/doc.md +++ b/src/packages/switch/doc.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 控制加载状态的图标 | `ReactNode` | `` | +| loadingIcon | 受控 loading 态图标 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.taro.md b/src/packages/switch/doc.taro.md index 9abaa7f260..77a4646b2f 100644 --- a/src/packages/switch/doc.taro.md +++ b/src/packages/switch/doc.taro.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react-taro' | disabled | 禁用状态 | `boolean` | `false` | | activeText | 打开时文字描述 | `ReactNode` | `-` | | inactiveText | 关闭时文字描述 | `ReactNode` | `-` | -| loadingIcon | 加载状态的图标 | `ReactNode` | `` | +| loadingIcon | 受控 loading 态图标 | `ReactNode` | `` | | onChange | 切换开关时触发 | `onChange:(value: boolean, event: Event)` | `-` | ## 主题定制 diff --git a/src/packages/switch/doc.zh-TW.md b/src/packages/switch/doc.zh-TW.md index f0c042e8f7..0f12e4205a 100644 --- a/src/packages/switch/doc.zh-TW.md +++ b/src/packages/switch/doc.zh-TW.md @@ -77,7 +77,7 @@ import { Switch } from '@nutui/nutui-react' | disabled | 禁用狀態 | `boolean` | `false` | | activeText | 打開時文字描述 | `ReactNode` | `-` | | inactiveText | 關閉時文字描述 | `ReactNode` | `-` | -| loadingIcon | 加載狀態的圖標 | `ReactNode` | `` | +| loadingIcon | 受控 loading 態圖標 | `ReactNode` | `` | | onChange | 切換開關時觸發 | `onChange:(value: boolean, event: Event)` | `-` | ## 主題定製 diff --git a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md index 61559a9017..88cf0c8259 100644 --- a/src/sites/sites-react/doc/docs/react/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/react/migrate-from-v2.md @@ -277,7 +277,12 @@ plugins: [ [//]: # '#### ImagePreview' [//]: # '#### NoticeBar' -[//]: # '#### Popover' + +#### Popover + +- 废弃的样式变量,这些变量存在于文档,已删除:`--nutui-popover-hover-background-color`、`--nutui-popover-hover-text-color`、`--nutui-popover-border-color` +- 变更样式变量 `--nutui-popover-menu-item-padding` 变更为 `--nutui-popover-padding`,`--nutui-popover-menu-item-width` 变更为 `--nutui-popover-item-width` +- 修订 `location` 的数据类型,使用统一位置类型 `FullPosition` #### Price diff --git a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md index fa1bde064e..2b317e987d 100644 --- a/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md +++ b/src/sites/sites-react/doc/docs/taro/migrate-from-v2.md @@ -276,7 +276,12 @@ plugins: [ [//]: # '#### ImagePreview' [//]: # '#### NoticeBar' -[//]: # '#### Popover' + +#### Popover + +- 废弃的样式变量,这些变量存在于文档,已删除:`--nutui-popover-hover-background-color`、`--nutui-popover-hover-text-color`、`--nutui-popover-border-color` +- 变更样式变量 `--nutui-popover-menu-item-padding` 变更为 `--nutui-popover-padding`,`--nutui-popover-menu-item-width` 变更为 `--nutui-popover-item-width` +- 修订 `location` 的数据类型,使用统一位置类型 `FullPosition` #### Price From b041d3678d5cfd2ab099113ae8c9ef0c30fb80e6 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Thu, 3 Apr 2025 18:32:41 +0800 Subject: [PATCH 10/11] fix: update descr --- src/packages/switch/demos/h5/demo2.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packages/switch/demos/h5/demo2.tsx b/src/packages/switch/demos/h5/demo2.tsx index 2a6c18a73f..cdb07fed90 100644 --- a/src/packages/switch/demos/h5/demo2.tsx +++ b/src/packages/switch/demos/h5/demo2.tsx @@ -12,7 +12,7 @@ const Demo2 = () => { }, 2000) }) if (!res) { - // 主动抛出一个错误,用于中断loading态 + // 主动抛出一个错误对象,用于中断组件 loading 态 throw new Error() } else { setCheckedAsync(value) From 4a7c320adcd36f04e840ffa495e09a5672ff0391 Mon Sep 17 00:00:00 2001 From: songchenglin3 <353833373@qq.com> Date: Mon, 9 Jun 2025 15:45:57 +0800 Subject: [PATCH 11/11] =?UTF-8?q?fix(switch):=20=E7=A7=BB=E9=99=A4?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E7=9A=84onchange=E5=9B=9E=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/packages/switch/switch.taro.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/packages/switch/switch.taro.tsx b/src/packages/switch/switch.taro.tsx index 5d72b21c7f..3b76fa1ab2 100644 --- a/src/packages/switch/switch.taro.tsx +++ b/src/packages/switch/switch.taro.tsx @@ -72,7 +72,6 @@ export const Switch: FunctionComponent> = (props) => { if (disabled || loading) return if (onChange) { loadingIcon && setLoading(true) - onChange(!value) try { await onChange(!value) } catch (e) {