一、简单介绍
第一篇的时候简单介绍了TS的基本和常用用法,这篇就用webpack搭建一个ts+react的简易demo,react也有官方的脚手架去使用,但是还是感觉自己搭建的脚手架更加可控。
二、搭建开发环境
从头搭建一个基于react + ts + webpack + Hooks 的开发环境
1 | // 初始化文件夹文件和 package.json |
打开 webpack.config.js文件,初始化简单的 webpack 配置
1 | const path = require("path"); |
然后新增一个入口文件index.tsx
1 | import * as React from "react"; |
注:for Typescript you have to import all (*) as React.
接着需要安装react,webpack依赖模块
1 | // 注:webpack4.0后,webpack 命令行相关的内容都迁移到 webpack-cli,除了 webpack 外,我们还需要安装 webpack-cli |
我们现在已经有了ts的文件,但是webpack并不能解析,所以需要安装ts解析器 awesome-typescript-loader,为什么不用ts-loader,而选择用 awesome-typescript-loader,你可以点击这里查看。
1 | npm i typescript awesome-typescript-loader -D |
更新webpack.config,新建对tsx的规则处理
1 | module: { |
我们还需要在根路径创建一个 tsconfig.json 文件,来告诉 webpack 如何去处理TS的文件
1 | { |
接下来我们需要安装react的声明文件,由于 React 和 React-dom 并不是使用 TS 进行开发的,所以 TS 不知道 React、 React-dom 的类型,以及该模块导出了什么,此时需要引入 .d.ts 的声明文件。
1 | npm i @types/react @types/react-dom -D |
接下来就只要将webpack.config中的test命令更改成下面,就可以直接启动项目了,然后在浏览器中输入localhost:8080 就可以直接查看。
1 | "start": "webpack-dev-server" |