feat(app): 实现登录功能并优化应用启动流程
- 新增登录相关组件和 API 接口 - 实现用户信息获取和更新逻辑 - 添加启动加载界面 - 优化导航结构,支持登录和主应用切换
@ -9,6 +9,7 @@
|
|||||||
"lint": "eslint .",
|
"lint": "eslint .",
|
||||||
"start": "react-native start",
|
"start": "react-native start",
|
||||||
"test": "jest",
|
"test": "jest",
|
||||||
|
"postinstall": "patch-package",
|
||||||
"build-android-common": "react-native bundle --platform android --dev false --entry-file src/app/app.ts --bundle-output bundle/android/common/common.android.bundle --assets-dest ./bundle/android/common --config metro.common.config.js --minify true --reset-cache",
|
"build-android-common": "react-native bundle --platform android --dev false --entry-file src/app/app.ts --bundle-output bundle/android/common/common.android.bundle --assets-dest ./bundle/android/common --config metro.common.config.js --minify true --reset-cache",
|
||||||
"build-android-buz": "react-native bundle --platform android --dev false --entry-file src/buz.ts --bundle-output ./bundle/android/buz/buz.android.bundle --assets-dest ./bundle/android/buz --config metro.main.config.js --minify true --reset-cache",
|
"build-android-buz": "react-native bundle --platform android --dev false --entry-file src/buz.ts --bundle-output ./bundle/android/buz/buz.android.bundle --assets-dest ./bundle/android/buz --config metro.main.config.js --minify true --reset-cache",
|
||||||
"build-ios-common": "react-native bundle --platform ios --dev false --entry-file src/app/app.ts --bundle-output bundle/ios/common.ios.bundle --assets-dest ./bundle/ios --config metro.common.config.js --minify true --reset-cache",
|
"build-ios-common": "react-native bundle --platform ios --dev false --entry-file src/app/app.ts --bundle-output bundle/ios/common.ios.bundle --assets-dest ./bundle/ios --config metro.common.config.js --minify true --reset-cache",
|
||||||
@ -25,22 +26,29 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@react-native-async-storage/async-storage": "^2.2.0",
|
"@react-native-async-storage/async-storage": "^2.2.0",
|
||||||
|
"@react-native-community/hooks": "^100.1.0",
|
||||||
"@react-native/new-app-screen": "0.80.1",
|
"@react-native/new-app-screen": "0.80.1",
|
||||||
"@react-navigation/native": "^7.1.14",
|
"@react-navigation/native": "^7.1.14",
|
||||||
"@react-navigation/stack": "^7.4.2",
|
"@react-navigation/stack": "^7.4.2",
|
||||||
|
"@szyx-mobile/hooks": "^1.2.0",
|
||||||
|
"@szyx-mobile/use-request": "^1.2.3",
|
||||||
"babel-plugin-module-resolver": "^5.0.2",
|
"babel-plugin-module-resolver": "^5.0.2",
|
||||||
|
"patch-package": "^8.0.0",
|
||||||
"react": "19.1.0",
|
"react": "19.1.0",
|
||||||
"react-native": "0.80.1",
|
"react-native": "0.80.1",
|
||||||
"react-native-bundle-splitter": "^3.0.1",
|
"react-native-bundle-splitter": "^3.0.1",
|
||||||
"react-native-copilot": "^3.3.3",
|
"react-native-copilot": "^3.3.3",
|
||||||
"react-native-device-info": "^14.0.4",
|
"react-native-device-info": "^14.0.4",
|
||||||
|
"react-native-exit-app": "^2.0.0",
|
||||||
"react-native-fs": "^2.20.0",
|
"react-native-fs": "^2.20.0",
|
||||||
"react-native-gesture-handler": "^2.27.2",
|
"react-native-gesture-handler": "^2.27.2",
|
||||||
|
"react-native-linear-gradient": "^2.8.3",
|
||||||
"react-native-root-siblings": "^5.0.1",
|
"react-native-root-siblings": "^5.0.1",
|
||||||
"react-native-safe-area-context": "^5.5.2",
|
"react-native-safe-area-context": "^5.5.2",
|
||||||
"react-native-spinkit": "^1.5.1",
|
"react-native-spinkit": "^1.5.1",
|
||||||
"react-native-storage": "^1.0.1",
|
"react-native-storage": "^1.0.1",
|
||||||
"react-native-toast-message": "^2.3.3",
|
"react-native-toast-message": "^2.3.3",
|
||||||
|
"react-native-webview": "^13.16.0",
|
||||||
"react-native-zip-archive": "^7.0.2"
|
"react-native-zip-archive": "^7.0.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
@ -14,15 +14,7 @@ function App() {
|
|||||||
<StatusBar barStyle={isDarkMode ? 'light-content' : 'dark-content'} />
|
<StatusBar barStyle={isDarkMode ? 'light-content' : 'dark-content'} />
|
||||||
<AppProvider>
|
<AppProvider>
|
||||||
<RootSiblingParent>
|
<RootSiblingParent>
|
||||||
{/*<CopilotProvider*/}
|
|
||||||
{/* backdropColor="rgba(0, 0, 0, 0.7)"*/}
|
|
||||||
{/* stepNumberComponent={() => null}*/}
|
|
||||||
{/* arrowSize={0}*/}
|
|
||||||
{/* tooltipStyle={styles.tooltip}*/}
|
|
||||||
{/* tooltipComponent={TooltipComponent}*/}
|
|
||||||
{/*>*/}
|
|
||||||
<NavigationContainer />
|
<NavigationContainer />
|
||||||
{/*</CopilotProvider>*/}
|
|
||||||
</RootSiblingParent>
|
</RootSiblingParent>
|
||||||
<BottomSheet ref={ref => BottomSheet.setRef(ref)} />
|
<BottomSheet ref={ref => BottomSheet.setRef(ref)} />
|
||||||
<Alert ref={ref => Alert.setRef(ref)} />
|
<Alert ref={ref => Alert.setRef(ref)} />
|
||||||
|
|||||||
|
之后 宽度: | 高度: | 大小: 54 KiB |
|
之后 宽度: | 高度: | 大小: 459 B |
|
之后 宽度: | 高度: | 大小: 975 B |
|
之后 宽度: | 高度: | 大小: 1.4 KiB |
|
之后 宽度: | 高度: | 大小: 273 B |
|
之后 宽度: | 高度: | 大小: 478 B |
|
之后 宽度: | 高度: | 大小: 716 B |
|
之后 宽度: | 高度: | 大小: 306 B |
|
之后 宽度: | 高度: | 大小: 576 B |
|
之后 宽度: | 高度: | 大小: 975 B |
|
之后 宽度: | 高度: | 大小: 228 B |
|
之后 宽度: | 高度: | 大小: 453 B |
|
之后 宽度: | 高度: | 大小: 760 B |
|
之后 宽度: | 高度: | 大小: 259 B |
|
之后 宽度: | 高度: | 大小: 526 B |
|
之后 宽度: | 高度: | 大小: 963 B |
|
之后 宽度: | 高度: | 大小: 267 B |
|
之后 宽度: | 高度: | 大小: 390 B |
|
之后 宽度: | 高度: | 大小: 680 B |
|
之后 宽度: | 高度: | 大小: 424 B |
|
之后 宽度: | 高度: | 大小: 996 B |
|
之后 宽度: | 高度: | 大小: 1.8 KiB |
|
之后 宽度: | 高度: | 大小: 9.0 KiB |
|
之后 宽度: | 高度: | 大小: 30 KiB |
|
之后 宽度: | 高度: | 大小: 50 KiB |
|
之后 宽度: | 高度: | 大小: 2.8 KiB |
|
之后 宽度: | 高度: | 大小: 5.9 KiB |
|
之后 宽度: | 高度: | 大小: 9.6 KiB |
|
之后 宽度: | 高度: | 大小: 2.2 KiB |
|
之后 宽度: | 高度: | 大小: 5.0 KiB |
|
之后 宽度: | 高度: | 大小: 8.6 KiB |
|
之后 宽度: | 高度: | 大小: 1.7 KiB |
|
之后 宽度: | 高度: | 大小: 3.8 KiB |
|
之后 宽度: | 高度: | 大小: 6.1 KiB |
|
之后 宽度: | 高度: | 大小: 608 B |
|
之后 宽度: | 高度: | 大小: 1.2 KiB |
|
之后 宽度: | 高度: | 大小: 1.8 KiB |
|
之后 宽度: | 高度: | 大小: 483 B |
|
之后 宽度: | 高度: | 大小: 956 B |
|
之后 宽度: | 高度: | 大小: 1.6 KiB |
|
之后 宽度: | 高度: | 大小: 2.9 KiB |
|
之后 宽度: | 高度: | 大小: 6.5 KiB |
|
之后 宽度: | 高度: | 大小: 9.2 KiB |
|
之后 宽度: | 高度: | 大小: 3.2 KiB |
|
之后 宽度: | 高度: | 大小: 7.1 KiB |
|
之后 宽度: | 高度: | 大小: 10 KiB |
|
之后 宽度: | 高度: | 大小: 798 B |
|
之后 宽度: | 高度: | 大小: 1.7 KiB |
|
之后 宽度: | 高度: | 大小: 2.8 KiB |
|
之后 宽度: | 高度: | 大小: 879 B |
|
之后 宽度: | 高度: | 大小: 2.0 KiB |
|
之后 宽度: | 高度: | 大小: 3.6 KiB |
|
之后 宽度: | 高度: | 大小: 851 B |
|
之后 宽度: | 高度: | 大小: 1.9 KiB |
|
之后 宽度: | 高度: | 大小: 3.2 KiB |
|
之后 宽度: | 高度: | 大小: 835 B |
|
之后 宽度: | 高度: | 大小: 1.8 KiB |
|
之后 宽度: | 高度: | 大小: 3.4 KiB |
|
之后 宽度: | 高度: | 大小: 790 B |
|
之后 宽度: | 高度: | 大小: 1.7 KiB |
|
之后 宽度: | 高度: | 大小: 2.8 KiB |
|
之后 宽度: | 高度: | 大小: 873 B |
|
之后 宽度: | 高度: | 大小: 1.8 KiB |
|
之后 宽度: | 高度: | 大小: 3.0 KiB |
|
之后 宽度: | 高度: | 大小: 895 B |
|
之后 宽度: | 高度: | 大小: 1.8 KiB |
|
之后 宽度: | 高度: | 大小: 2.9 KiB |
|
之后 宽度: | 高度: | 大小: 724 B |
|
之后 宽度: | 高度: | 大小: 1.5 KiB |
|
之后 宽度: | 高度: | 大小: 2.3 KiB |
|
之后 宽度: | 高度: | 大小: 5.8 KiB |
|
之后 宽度: | 高度: | 大小: 17 KiB |
|
之后 宽度: | 高度: | 大小: 34 KiB |
|
之后 宽度: | 高度: | 大小: 12 KiB |
|
之后 宽度: | 高度: | 大小: 37 KiB |
|
之后 宽度: | 高度: | 大小: 62 KiB |
|
之后 宽度: | 高度: | 大小: 6.3 KiB |
|
之后 宽度: | 高度: | 大小: 20 KiB |
|
之后 宽度: | 高度: | 大小: 19 KiB |
|
之后 宽度: | 高度: | 大小: 51 KiB |
|
之后 宽度: | 高度: | 大小: 137 KiB |
|
之后 宽度: | 高度: | 大小: 206 KiB |
|
之后 宽度: | 高度: | 大小: 992 B |
|
之后 宽度: | 高度: | 大小: 2.2 KiB |
|
之后 宽度: | 高度: | 大小: 3.3 KiB |
|
之后 宽度: | 高度: | 大小: 608 B |
|
之后 宽度: | 高度: | 大小: 1.3 KiB |
|
之后 宽度: | 高度: | 大小: 2.1 KiB |
|
之后 宽度: | 高度: | 大小: 625 B |
|
之后 宽度: | 高度: | 大小: 1.1 KiB |
|
之后 宽度: | 高度: | 大小: 1.4 KiB |
|
之后 宽度: | 高度: | 大小: 4.9 KiB |
|
之后 宽度: | 高度: | 大小: 24 KiB |
|
之后 宽度: | 高度: | 大小: 54 KiB |
|
之后 宽度: | 高度: | 大小: 3.7 KiB |
|
之后 宽度: | 高度: | 大小: 11 KiB |
|
之后 宽度: | 高度: | 大小: 22 KiB |
|
之后 宽度: | 高度: | 大小: 3.9 KiB |