添加项目基础配置和核心功能模块: - 配置 TypeScript 和 React Native 环境 - 实现认证状态管理 - 封装 API 请求客户端 - 搭建应用导航框架
57 lines
1.4 KiB
TypeScript
57 lines
1.4 KiB
TypeScript
/**
|
|
* Timeline 移动端 App 入口
|
|
*
|
|
* 功能描述:
|
|
* React Native 应用入口,配置导航和全局状态管理。
|
|
*
|
|
* @author Timeline Team
|
|
* @date 2024
|
|
*/
|
|
|
|
import React from 'react';
|
|
import { StatusBar } from 'react-native';
|
|
import { SafeAreaProvider } from 'react-native-safe-area-context';
|
|
import { GestureHandlerRootView } from 'react-native-gesture-handler';
|
|
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
|
import AppNavigator from './src/navigation/AppNavigator';
|
|
|
|
// 创建 React Query 客户端
|
|
const queryClient = new QueryClient({
|
|
defaultOptions: {
|
|
queries: {
|
|
staleTime: 5 * 60 * 1000, // 5分钟
|
|
cacheTime: 10 * 60 * 1000, // 10分钟
|
|
retry: 2,
|
|
refetchOnWindowFocus: false,
|
|
},
|
|
},
|
|
});
|
|
|
|
/**
|
|
* App 根组件
|
|
*
|
|
* 组件层级:
|
|
* 1. GestureHandlerRootView - 手势处理
|
|
* 2. SafeAreaProvider - 安全区域
|
|
* 3. QueryClientProvider - 数据请求
|
|
* 4. AppNavigator - 导航
|
|
*/
|
|
const App: React.FC = () => {
|
|
return (
|
|
<GestureHandlerRootView style={{ flex: 1 }}>
|
|
<SafeAreaProvider>
|
|
<QueryClientProvider client={queryClient}>
|
|
<StatusBar
|
|
barStyle="dark-content"
|
|
backgroundColor="transparent"
|
|
translucent
|
|
/>
|
|
<AppNavigator />
|
|
</QueryClientProvider>
|
|
</SafeAreaProvider>
|
|
</GestureHandlerRootView>
|
|
);
|
|
};
|
|
|
|
export default App;
|