📌  相关文章
📜  react-native init typescript (1)

📅  最后修改于: 2023-12-03 15:19:45.218000             🧑  作者: Mango

使用 Typescript 初始化 React Native 项目

使用 Typescript 可以提高代码的可维护性、可读性。在 React Native 项目中,使用 Typescript 可以帮助开发者更好地管理项目中的类型和结构。

初始化项目

在命令行中输入以下命令,即可初始化一个 React Native 项目并集成 Typescript:

npx react-native init myApp --template react-native-template-typescript

其中,myApp 可以替换成你的项目名称,该指令会根据模板生成项目结构和文件。

安装依赖

初始化完成后,进入项目文件夹,首先需要安装以下依赖:

cd myApp
yarn add typescript @types/react @types/react-native @types/react-test-renderer -D

其中,typescript 是 Typescript 编译器,@types/react@types/react-native@types/react-test-renderer 是 React Native 相关的类型定义文件。

配置项目

在项目根目录中创建 tsconfig.json 文件,并添加以下内容:

{
  "compilerOptions": {
    "allowJs": true,
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    "isolatedModules": true,
    "jsx": "react",
    "lib": ["es6"],
    "moduleResolution": "node",
    "noEmit": true,
    "strict": true,
    "target": "esnext",
    "baseUrl": "./src",
    "paths": {
      "*": ["*", "generated/*"]
    }
  },
  "exclude": ["node_modules", "babel.config.js", "metro.config.js", "jest.config.js"]
}

这个文件指定了 TypeScript 编译器的选项和项目的根目录。其中,baseUrl 指定了项目中模块的基础目录路径,paths 设置了模块名称到源文件路径的映射,这样可以减少 requireimport 语句中的重复路径。

在项目根目录的 babel.config.js 文件中添加以下配置:

module.exports = {
  presets: ['module:metro-react-native-babel-preset'],
};

这个文件配置了 React Native 应用使用的 Babel 插件和预设。

编写代码

src 目录下新建一个入口文件 index.tsx,输入以下内容:

import React from 'react';
import { Text, View } from 'react-native';

const App = () => {
  return (
    <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
      <Text>Hello TypeScript!</Text>
    </View>
  );
};

export default App;

这个文件使用了最简单的组件,ViewText 来展示一个简单的文本内容。

运行项目

运行以下命令在模拟器或真机上启动应用:

npx react-native run-android
npx react-native run-ios

在运行项目过程中,TypeScript 编译器会自动编译 TypeScript 文件,如果存在语法错误,编译器会报出错误信息。

现在,你已经成功地创建了一个基于 React Native 和 Typescript 的项目,可以开始愉快地编写代码了。