-
Notifications
You must be signed in to change notification settings - Fork 266
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: v15 popup #2844
feat: v15 popup #2844
Changes from 14 commits
71e34d2
808e9cc
f19d4a7
39762e1
dce1bc6
563271c
97b0243
3654237
89ecff4
534c260
e70cef6
b9f3aed
307fc95
f565985
ff54e0a
f2f8712
33b8f84
196d4a3
f13ddcf
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -121,19 +121,18 @@ | |||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
const renderLeftOnCustomSwitch = () => { | ||||||||||||||||||||||||||||||||||||||||||||||||||
return ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
<> | ||||||||||||||||||||||||||||||||||||||||||||||||||
{custom && ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
<div className={`${classPrefix}-left-icon`} onClick={onSwitchModule}> | ||||||||||||||||||||||||||||||||||||||||||||||||||
{React.isValidElement(backIcon) ? ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
backIcon | ||||||||||||||||||||||||||||||||||||||||||||||||||
) : ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
<ArrowLeft color="#cccccc" /> | ||||||||||||||||||||||||||||||||||||||||||||||||||
)} | ||||||||||||||||||||||||||||||||||||||||||||||||||
</div> | ||||||||||||||||||||||||||||||||||||||||||||||||||
)} | ||||||||||||||||||||||||||||||||||||||||||||||||||
</> | ||||||||||||||||||||||||||||||||||||||||||||||||||
) | ||||||||||||||||||||||||||||||||||||||||||||||||||
if (custom) { | ||||||||||||||||||||||||||||||||||||||||||||||||||
return ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
<div className={`${classPrefix}-left-icon`} onClick={onSwitchModule}> | ||||||||||||||||||||||||||||||||||||||||||||||||||
{React.isValidElement(backIcon) ? ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
backIcon | ||||||||||||||||||||||||||||||||||||||||||||||||||
) : ( | ||||||||||||||||||||||||||||||||||||||||||||||||||
<ArrowLeft color="#cccccc" /> | ||||||||||||||||||||||||||||||||||||||||||||||||||
)} | ||||||||||||||||||||||||||||||||||||||||||||||||||
</div> | ||||||||||||||||||||||||||||||||||||||||||||||||||
) | ||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||
return null | ||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+124
to
+135
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 建议:在回调中使用最新状态以避免逻辑错误 当前的 onSwitchModule 函数在更新 currentType 之后,才调用了 onSwitch 回调,但回调参数仍然是之前旧的 currentType 值,这可能导致不符合预期的行为。建议先用一个局部变量存储新的类型,再统一更新并调用回调,以确保回调函数拿到最新的类型值。 可以参考以下修正示例: -const onSwitchModule = () => {
- if (currentType === 'exist') {
- setCurrentType('custom')
- } else {
- setCurrentType('exist')
- }
- onSwitch && onSwitch({ type: currentType })
+const onSwitchModule = () => {
+ const newType = currentType === 'exist' ? 'custom' : 'exist'
+ setCurrentType(newType)
+ onSwitch && onSwitch({ type: newType })
} 📝 Committable suggestion
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||||||
} | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||
const selectedExistItem = (data: AddressList) => { | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,28 @@ | ||
import React, { useState } from 'react' | ||
import { Popup, Cell } from '@nutui/nutui-react' | ||
|
||
const Demo1 = () => { | ||
const [showBasic, setShowBasic] = useState(false) | ||
const Demo = () => { | ||
const [showIcon, setShowIcon] = useState(false) | ||
|
||
return ( | ||
<> | ||
<Cell | ||
title="展示弹出层" | ||
title="基础弹框" | ||
onClick={() => { | ||
setShowBasic(true) | ||
setShowIcon(true) | ||
}} | ||
/> | ||
<Popup | ||
zIndex={2000} | ||
visible={showBasic} | ||
style={{ padding: '30px 50px' }} | ||
closeable | ||
visible={showIcon} | ||
title="标题" | ||
description="这里是副标题这是副标题" | ||
position="bottom" | ||
onClose={() => { | ||
setShowBasic(false) | ||
setShowIcon(false) | ||
}} | ||
/> | ||
</> | ||
) | ||
} | ||
export default Demo1 | ||
export default Demo |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,28 @@ | ||
import React, { useState } from 'react' | ||
import { Popup, Cell } from '@nutui/nutui-react-taro' | ||
import { ScrollView, Text } from '@tarojs/components' | ||
|
||
const Demo1 = () => { | ||
const [showBasic, setShowBasic] = useState(false) | ||
const Demo = () => { | ||
const [showIcon, setShowIcon] = useState(false) | ||
|
||
return ( | ||
<> | ||
<Cell | ||
title="展示弹出层" | ||
title="基础弹框" | ||
onClick={() => { | ||
setShowBasic(true) | ||
setShowIcon(true) | ||
}} | ||
/> | ||
<Popup | ||
visible={showBasic} | ||
style={{ padding: '30px 50px' }} | ||
closeable | ||
visible={showIcon} | ||
title="标题" | ||
description="这里是副标题这是副标题" | ||
position="bottom" | ||
onClose={() => { | ||
setShowBasic(false) | ||
setShowIcon(false) | ||
}} | ||
> | ||
<ScrollView style={{ height: '200px', overflowY: 'scroll' }}> | ||
{Array.from({ length: 1 }) | ||
.fill('') | ||
.map((_, i) => ( | ||
<Cell key={i}> | ||
<Text>正文</Text> | ||
</Cell> | ||
))} | ||
</ScrollView> | ||
</Popup> | ||
/> | ||
</> | ||
) | ||
} | ||
export default Demo1 | ||
export default Demo |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个文件不提交