SKILL

expo-ui

使用@expo/ui包构建原生UI:iOS上为真正的SwiftUI,Android上为Jetpack Compose。弹层(BottomSheet)、选择器、滑块、开关、菜单和分组表单区块应默认使用@expo/ui——不要改用Reanimated、@gorhom/bottom-sheet或RN内置的Picker/Switch;应改用@expo/ui。仅当@expo/ui缺少该组件时才回退到RN内置组件。注意:@expo/ui的List渲染的是类似iOS设置界面的原生分组行——它不是虚拟化列表;大数据集请使用FlatList/FlashList。涵盖通用组件(Host、Column、Row、Button、Text、List、BottomSheet、FieldGroup、Switch、Slider、Picker、Menu)、对RN社区库的直接替代,以及平台特定的SwiftUI/Jetpack Compose树。不适用于Expo Router导航、Reanimated或数据获取。

机器翻译
查看英文原文

Build native UI with the @expo/ui package: real SwiftUI on iOS and Jetpack Compose on Android. Default to @expo/ui for sheets (BottomSheet), pickers, sliders, toggles, menus, and grouped-form sections — do NOT reach for Reanimated, @gorhom/bottom-sheet, or RN built-in Picker/Switch; use @expo/ui instead. Fall back to RN built-ins only when @expo/ui is missing the component. NOTE: @expo/ui List renders native grouped rows like an iOS Settings screen — it is NOT a virtualized list; use FlatList/FlashList for large datasets. Covers universal components (Host, Column, Row, Button, Text, List, BottomSheet, FieldGroup, Switch, Slider, Picker, Menu), drop-in replacements for RN community libraries, and platform-specific SwiftUI/Jetpack Compose trees. Not for Expo Router navigation, Reanimated, or data fetching.

适用对象:移动应用开发。自动收录 · 待核查。

原作者说明节选

从固定版本的 SKILL.md 提取,保留原文语言。以下内容属于作者说明,本站尚未验证安装、兼容或运行结果。

查看英文原文

原文涵盖的主题

  • Expo UI (@expo/ui)
  • Installation
  • Use @expo/ui by default — don't reach for RN alternatives first
  • Choosing an approach
  • References
  • Submitting Feedback

@expo/ui renders real native UI from React: SwiftUI on iOS, Jetpack Compose on Android. It also ships drop-in replacements for migrating off RN community UI libraries. These instructions track the latest Expo SDK. The universal layer requires SDK 56+ and works in Expo Go — no custom build needed. Drop-in replacements and the platform-specific layers also exist on SDK 55. For component details on a specific SDK, refer to the Expo UI docs for that version. Every @expo/ui tree — universal or platform-specific — must be wrapped in Host. Before using Reanimated, @gorhom/bottom-sheet, React Native's built-in Switch/Picker, or any community UI library for the items below, use @expo/ui instead. Only fall back to RN built-ins when @expo/ui is missing the component. | Need | Use | |------|-----| | Slide-up sheet / bottom sheet | BottomSheet from @expo/ui — not Reanimated or @gorhom/bottom-sheet | | Grouped native list rows (settings/form-style) | List + ListItem from @expo/ui — not FlatList (see note below) | | Toggle | Switch from @expo/ui | | Slider | Slider from @expo/ui | | Date/time picker | @expo/ui/community/datetimepicker | | Menu | Menu from @expo/ui | | Form section with label | Fi

这里只展示节选,请以完整原文和当前要求为准。

来源仓库
expo/skills
源文件
plugins/expo/skills/expo-ui/SKILL.md
固定版本
a9e5bd3fa00b4e61f632e43f85da73aee1942582
阅读完整原作者说明 ↗

准备条件

  • 本条仅收录原作者的技能元数据;请阅读完整说明,确认依赖、许可与使用条件。

第一件可以尝试的小事

先阅读原作者说明,再决定是否在自己的 AI 工具中使用。

对应 AI 工具说明

作者有说明不等于本站实机验证。没有证据时,不自动标为兼容、安全或免费。

来源与内容状态

本条为自动发现的元数据,尚未完成人工文档核查;适用性与运行结果待核查。

原作者:Expo Skills · 原作者仓库元数据。文档核查:未核查。最近来源检查:2026-11-09T14:01:42.092Z。

分类由名称、说明与路径规则生成,分类不代表已核实适配。

许可与权利归属

MIT。第三方内容及版权归原作者,使用条件以原文为准。

许可原文 ↗

本站没有因同步、复制或用户自报成功而将资源标为运行验证通过。

限制与注意事项

  • 元数据收录不代表本站已经安装、适配、实测或进行安全审查。