TypeScript初体验(四)在React中使用TS

1、创建CRA支持TS的项目

React脚手架工具create-react-app(简称:CRA)默认支持TypeScript

创建支持TS项目的命令:

npx create-react-app 项目名称 --template typescript

或
yarn create react-app 项目名称 --template typescript

在已有项目中添加TS的命令:

npm install --save typescript @types/node @types/react @types/react-dom @types/jest

或
yarn add typescript @types/node @types/react @types/react-dom @types/jest

了解更多:

Adding TypeScript | Create React App 中文文档

相对于非TS项目,目录结构有以下三点变化

1、根目录中增加了tsconfig.json配置文件:指定项目文件和项目编译所需的配置项

tsconfig.json可以自动生成,命令:tsc --init

2、组件的扩展名变为了:*.tsx

3、src目录中增加了react-app-env.d.ts:React项目默认的类型声明文件

react-app-env.d.ts

1、三斜杠指令:指定依赖的其他类型声明文件,types表示以来的类型声明文件包的名称

2、react-scripts的类型声明文件包含了两部分类型:

react、react-dom、node的类型

图片、样式等模块的类型,以允许在代码中导入图片、svg等文件

3、在src目录下的.d.ts文件TS会自动加载用来提供类型声明(通过修改tsconfig.json中的include配置可以验证)

tsconfig.json配置文件

除了在 tsconfig.json配置文件中使用编译配置外,还可以通过命令行来使用

使用演示:

复制代码
tsc hello.ts --target es6

注意:

tsc后不带输入文件时(比如:tsc),才会启用tsconfig.json文件中的配置,否则会忽略

推荐使用tsconfig.json配置文件

相关推荐
米米商聊12 小时前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
kyriewen15 小时前
我把 10 道面试题答案真跑了一遍:6 道是错的
前端·javascript·面试
WebInfra16 小时前
Rspack 2.3 发布:联手 SWC 团队带来全新编译器
前端·javascript·github
德尔塔A16 小时前
中文全文检索加向量,我用 SQLite 做到零依赖
typescript
wflynn16 小时前
GitHub 今日推荐|rea:用 MCP 把反编译器和 AI agent 接到一起的逆向工具
typescript·开源·github·agent·agent-skills·binary-analysis
德尔塔A16 小时前
AI 改了 300KB 的文件,我让浏览器一屏都不多拿
typescript
德尔塔A16 小时前
给 Agent 写终端界面,我一个 UI 库都没装
typescript
德尔塔A16 小时前
同一条命令,在 Windows 上炸了三种方式
typescript
德尔塔A16 小时前
同一个会话,终端和浏览器同时开着会发生什么
typescript
FRing0317 小时前
JavaScript入门到精通三十一(原型继承、原型链)
开发语言·前端·javascript