Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

refactor(dialog): improve composition model and accessibility

未關閉
#4,933 1 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 12 天內回覆

@kachmashk 已經在處理了。

開始於 2026年8月25日。

  • #5072 來自 @kachmashk —— 未關閉

評估

難度
5/5
預估耗時
一週以上
新手友好度
30/100
Issue 類型
重構
描述清晰度
需要釐清
活躍度
冷清
技術堆疊
react-native, typescript

研究方向

首先定位 Dialog 元件,並檢視其目前以 children 為基礎的組合方式、portal 行為和可見性更新。將現有公開 API 與提議的 title、content 和 actions props 進行比較,接著評估鍵盤、無障礙、MD3 間距、色調提升以及 wrapper 方面的變更。當在所述平台和邊界情況下都具備一致的 API 和一致的行為,並改善渲染特性時,即表示完成。

由索引模型根據 Issue 內容生成。

描述

v6

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

環境準備

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

callstack/react-native-paper 的其他 Issue

查看 callstack/react-native-paper 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。