refactor(dialog): improve composition model and accessibility
維護者通常 12 天內回覆
評估
- 難度
- 5/5
- 預估耗時
- 一週以上
- 新手友好度
- 30/100
- Issue 類型
- 重構
- 描述清晰度
- 需要釐清
- 活躍度
- 冷清
- 技術堆疊
- react-native, typescript
- 領域
- accessibility, design, frontend, mobile, performance
研究方向
首先定位 Dialog 元件,並檢視其目前以 children 為基礎的組合方式、portal 行為和可見性更新。將現有公開 API 與提議的 title、content 和 actions props 進行比較,接著評估鍵盤、無障礙、MD3 間距、色調提升以及 wrapper 方面的變更。當在所述平台和邊界情況下都具備一致的 API 和一致的行為,並改善渲染特性時,即表示完成。
由索引模型根據 Issue 內容生成。
描述
Refactor Dialog to improve Material Design 3 compliance, remove problematic children patterns, improve performance characteristics, and modernize the public API.
Problems
- Current API relies heavily on children composition in ways that are difficult to optimize
- Internal layout logic is tightly coupled to arbitrary child structures
- MD3 behaviors and visuals are not fully aligned with current Material guidelines
- Rendering performance can degrade in large lists or frequently updated screens
- Type safety and discoverability of the API can be improved
- The component has inconsistent behavior between platforms and edge cases
Focus Areas
- Simplify Dialog.Title / Dialog.Content / Dialog.Actions hierarchy
- Improve keyboard and accessibility handling
- Improve MD3 spacing and tonal elevation
- Reduce excessive wrappers
Proposed API Direction
<Dialog title="Delete item" content="Are you sure?" actions={[...]} />
Performance Opportunities
- Reduce nested layout complexity
- Improve portal interaction handling
- Reduce unnecessary rerenders during visibility updates
- 主要語言
- TypeScript
- 星號
- 14.5k
- 分支
- 2.3k
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
callstack/react-native-paper 的其他 Issue
-
Menu ignores the keyboard when it mounts while the keyboard is already open可能已有人在做 @manchoudhary 於 41 天前認領。 未關閉
難度 2/5 1-3 小時 新手友好度 76/100
callstack/react-native-paper#5096 ·
維護者通常 12 天內回覆
-
Color Picker Popup Is Obscured On "Guides -> Theming -> Creating Dynamic Theme Colors" Documentation On Both v5 and v6可能已有人在做 @fatihcvs 於 35 天前認領。 未關閉bug
難度 2/5 1-3 小時 新手友好度 68/100
callstack/react-native-paper#5093 ·
維護者通常 12 天內回覆
-
Tooltip: onPress event object is not propagated to parent component on native可能已有人在做 @Shevilll 於 127 天前認領。 未關閉bug
難度 2/5 1-3 小時 新手友好度 74/100
callstack/react-native-paper#5003 ·
維護者通常 12 天內回覆
-
Snackbar stays mounted after `visible=false` under new architecture (iOS + Android)可能已有人在做 @momomuchu 於 115 天前認領。 未關閉
難度 2/5 1-3 小時 新手友好度 78/100
callstack/react-native-paper#4951 ·
維護者通常 12 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 68/100
callstack/react-native-paper#4881 ·
維護者通常 12 天內回覆
查看 callstack/react-native-paper 的全部 Issue
相似的 Issue
-
bug require-triage
難度 2/5 1-3 小時 新手友好度 72/100
expressjs/expressjs.com#2549 · 1 個 reaction ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 83/100
umami-software/umami#4686 · 1 則留言 ·
維護者通常 2 天內回覆
-
[Bug]: Device screenshot fails with 500 on iPhone Duo (Xcode 27.2): serve-sim calls simctl without --display可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 2/5 1-3 小時 新手友好度 66/100
pingdotgg/t3code#24900 · 1 則留言 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 76/100
inu-appcenter/UNIDorm-web#411 ·
維護者通常 1 天內回覆
-
🐛 bug
難度 2/5 1-3 小時 新手友好度 82/100
維護者通常 2 天內回覆