该技能是一份使用 Expo Router 构建应用的完整指南,覆盖基础、样式、组件、导航、动画、模式与原生标签页等主题。资料以参考文件索引的形式组织,涉及路由结构、NativeTabs 原生标签栏、SF Symbols 图标、iOS 原生控件、模糊与液态玻璃视觉效果、Reanimated 动画、搜索栏集成、渐变、媒体处理、数据存储(SQLite、AsyncStorage、SecureStore)以及 WebGPU 与 Three.js 的 3D 图形。
运行方面强调优先使用 Expo Go:先执行 npx expo start 并用 Expo Go 扫码,充分测试后再考虑自定义构建;仅在使用本地 Expo 模块、Apple 目标(小组件等)、Expo Go 不含的第三方原生模块或 app.json 无法表达的原生配置时,才需要 npx expo run:ios、npx expo run:android 或 eas build。
代码风格要求使用顶部 import、kebab-case 文件名、配置 tsconfig.json 路径别名、移动或重构时删除旧路由文件。路由应放在 app 目录,不得与组件、类型或工具同置,并确保存在匹配 “/” 的路由。库偏好上避免已从 React Native 移除的模块与旧版 expo-permissions,推荐 expo-audio、expo-video、expo-symbols、react-native-safe-area-context、process.env.EXPO_OS、React.use、expo-image 与 expo-glass-effect。
响应式方面建议根组件包裹滚动视图,使用 ScrollView 的 contentInsetAdjustmentBehavior="automatic",用 flexbox 和 useWindowDimensions 替代 Dimensions API。样式遵循 Apple 人机界面指南,优先使用 flex gap 与 padding,内联样式而非 StyleSheet.create,圆角使用 { borderCurve: 'continuous' },阴影使用 CSS boxShadow,不使用旧版 shadow 或 elevation;不支持 CSS 与 Tailwind。导航使用 expo-router 的 Link、Stack 与 _layout.tsx,支持上下文菜单、链接预览、modal 与 formSheet。限制方面,资料未提供收费、价格或效果数据。