# 策展 · X (Twitter) 🔥

> 📖 本站完整內容索引（documentation index）：[llms.txt](/llms.txt)

> 作者：Jay Meistrich (@jmeistrich) · 平台：X (Twitter) · 日期：2026-05-29

> 原始來源：https://x.com/jmeistrich/status/2059922504320225316

## 中文摘要

Legend List 3.0 正式發布，全面支援 React DOM 並強化效能與聊天應用功能。

Jay Meistrich 於 2026 年 5 月 28 日宣布推出 Legend List 3.0，這是該專案自 v2 版本以來累積近 1,000 次提交後的重大更新。此版本不僅實現了對 React DOM 的原生支援，更在效能穩定性、聊天介面互動及動態排版上進行了深度優化，旨在成為 React Native 與 Web 環境中 `FlatList` 或 `FlashList` 的高效替代方案。

**核心效能與跨平台支援**
Legend List 3.0 透過優化虛擬化機制，顯著降低了 CPU 與記憶體的使用率。即便在處理高負載元件並進行極速捲動測試時，系統仍能保持流暢的恢復速度。
- 支援 React Native 與 React DOM，開發者可根據平台選擇匯入路徑（`@legendapp/list/react-native` 或 `@legendapp/list/react`）。
- 支援動態尺寸，無需手動測量元件高度。
- 整合 `Reanimated` 實現更平滑的項目過場動畫。

**專為聊天與 AI 應用設計**
針對聊天室、資訊流等需要雙向擴展的場景，v3 引入了多項關鍵功能，解決了過去需要複雜 Hack 手段才能實現的排版需求：
- `initialScrollAtEnd`：無需預先渲染完整歷史紀錄，即可直接從最新項目開始顯示。
- `maintainScrollAtEnd` 與 `maintainVisibleContentPosition`：確保在新增訊息或內容尺寸變動時，視窗位置保持穩定。
- `anchoredEndSpace`：為浮動輸入框或覆蓋層預留空間，確保新訊息能準確落在可視範圍內。
- `KeyboardAwareLegendList`：專為聊天應用打造，能自動處理鍵盤彈出時的視窗捲動與輸入框遮擋問題。

**進階功能與開發者工具**
v3 版本大幅擴充了 API 的靈活性，滿足複雜的 UI 互動需求：
- `SectionList`：新增專屬套件（`@legendapp/list/section-list`），支援黏性區段標題（Sticky Headers）及 `scrollToLocation`。
- `alwaysRender`：允許開發者指定特定項目（如頁首、頁尾或特定索引）保持掛載狀態。
- `dataVersion` 與 `itemsAreEqual`：提供更精確的資料變更檢測機制，優化渲染效能。
- 完善的命令式 API：提供非同步的 `scrollToIndex`、`scrollToEnd` 與 `scrollToOffset` 方法，並可透過 `getState()` 獲取捲動指標與快取狀態。

**快速上手與遷移**
開發者可透過官方文件進行部署與遷移，詳細的變更摘要與升級指南請參考 [Migration to v3](https://legendapp.com/open-source/list/docs/migration-to-v3)。更多關於 Legend List 的技術細節與效能優化策略，可參閱 [Legend List 官方網站](https://legendapp.com/open-source/list)。

## 標籤

框架更新, 功能更新, 開源專案, React, Web, Legend List, React
