React Native JSI 模板项目教程
1. 项目的目录结构及介绍
react-native-jsi-template/
├── android/
│ ├── app/
│ ├── build.gradle
│ ├── gradle.properties
│ ├── settings.gradle
│ └── ...
├── ios/
│ ├── ReactNativeJsiTemplate/
│ ├── ReactNativeJsiTemplate.xcodeproj/
│ ├── ReactNativeJsiTemplateTests/
│ └── ...
├── src/
│ ├── index.js
│ ├── App.js
│ └── ...
├── package.json
├── README.md
└── ...
目录结构说明
- android/: 包含 Android 项目的所有文件和配置。
- ios/: 包含 iOS 项目的所有文件和配置。
- src/: 包含 React Native 项目的主要源代码文件。
- package.json: 项目的依赖和脚本配置文件。
- README.md: 项目的说明文档。
2. 项目的启动文件介绍
src/index.js
这是项目的入口文件,负责初始化 React Native 应用并加载 App.js
。
import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';
AppRegistry.registerComponent(appName, () => App);
src/App.js
这是应用的主组件,包含了应用的主要逻辑和界面布局。
import React from 'react';
import {SafeAreaView, Text, View} from 'react-native';
const App = () => {
return (
<SafeAreaView>
<View>
<Text>Welcome to React Native JSI Template</Text>
</View>
</SafeAreaView>
);
};
export default App;
3. 项目的配置文件介绍
package.json
这是 Node.js 项目的配置文件,包含了项目的依赖、脚本和其他元数据。
{
"name": "react-native-jsi-template",
"version": "1.0.0",
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint ."
},
"dependencies": {
"react": "17.0.2",
"react-native": "0.66.0"
},
"devDependencies": {
"@babel/core": "^7.12.9",
"@babel/runtime": "^7.12.5",
"babel-jest": "^26.6.3",
"eslint": "^7.14.0",
"jest": "^26.6.3",
"metro-react-native-babel-preset": "^0.66.0",
"react-test-renderer": "17.0.2"
},
"jest": {
"preset": "react-native"
}
}
android/build.gradle
这是 Android 项目的构建配置文件,包含了项目的依赖和构建脚本。
buildscript {
ext {
buildToolsVersion = "30.0.2"
minSdkVersion = 21
compileSdkVersion = 30
targetSdkVersion = 30
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath("com.android.tools.build:gradle:4.2.1")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenCentral()
google()
maven { url 'https://www.jitpack.io' }
}
}
ios/ReactNativeJsiTemplate.xcodeproj/project.pbxproj
这是 iOS 项目的 Xcode 配置文件,包含了项目的构建设置和依赖。
由于文件较大且复杂,这里不