通过 git
下载脚手架代码:
git clone https://github.com/kaysonwu/react-app.git
安装依赖包
yarn intall
通过脚本命令编译源代码,如果需要使用服务端渲染,则需要启动服务器,具体命令如下:
// 编译代码
yarn build
// 启动服务器
yarn start
我们推荐你使用 Visual Studio Code 作为代码编辑器,然后你还需要为编辑器安装以下插件:
现在,你的编辑器已经准备就绪了。不过,由于本脚手架是基于 Typescript 和 React 构建而成的,这意味着你必须熟悉以下技术栈:
🥳 好了,一切就绪,开始我们的开发之旅吧~
-
启动开发服务器
yarn dev
-
在
src/pages
目录里新建一个home
文件夹mkdir ./src/pages/home
-
然后,在
home
文件夹里创建一个index.tsx
文件,并写上一些代码vi ./src/pages/home/index.tsx import React, { FC } from 'react'; import { FormattedMessage } from 'react-intl'; const Home: FC = () => ( <> <FormattedMessage id="Hello React and Typescript!" /> </> ); export default Home;
-
最后,在
src/components/application/router.tsx
文件中,为home
页面配置路由vi src/components/application/router.tsx import React, { FC } from 'react'; import { Switch, Route, Redirect } from 'react-router-dom'; import Page from '../loadable/page'; const Router: FC = () => { return ( <Switch> ... <Route exact path="/home"> <Page path="home" /> </Route> ... </Switch> ); }; export default Router;
├── docs // 文档目录
│
├── mocks // 模拟数据目录
│
├── public // 客户端构建目录
│ ├── images/
│ ├── .gitignore
│ └── update-browser.html // 浏览器升级提示页面
│
├── server // 服务端构建目录
│
├── src // 源代码目录
│ ├── components // 组件目录
│ │ ├── application // 应用
│ │ │ ├── context.tsx // 上下文
│ │ │ ├── index.tsx //
│ │ │ └── route.tsx // 路由
│ │ │
│ │ ├── loadable // 代码拆分
│ │ │ ├── locale.tsx // 国际化
│ │ │ └── page.tsx // 页面
│ │ │
│ │ └── locale-provider // 国际化
│ │ └── index.tsx
│ │
│ ├── locales // 国际化语言存放目录
│ │ └── zh-CN // 简体中文
│ │ ├── home.ts // home 页面翻译
│ │ └── index.ts // 公用翻译
│ │
│ ├── pages // 页面目录
│ │ ├── exception // 异常页面
│ │ │ ├── 403.tsx
│ │ │ ├── 404.tsx
│ │ │ └── 500.tsx
│ │ └── home // Home 示例页面
│ │ └── index.tsx
│ │
│ ├── rules // `antd` From 组件自定义验证规则
│ │
│ ├── services // API 服务
│ │
│ ├── typings // Typescript 全局声明文件
│ │ ├── api.d.ts // API
│ │ ├── images.d.ts // 资源文件
│ │ ├── locale.d.ts // 国际化
│ │ └── store.d.ts // 数据
│ │
│ ├── utils // 应用工具箱
│ │ ├── loadable.ts // 代码拆分
│ │ ├── locale.ts // 国际化
│ │ ├── route.ts // 路由
│ │ ├── store.ts // 数据
│ │ └── string.ts // 字符串辅助函数
│ │
│ ├── indedx.html // HTML 模板
│ ├── index.tsx // 入口文件
│ └── server.tsx // 服务器文件
│
├── tests // 测试目录
├── .editorconfig // EditorConfig 配置文件
├── .eslintrc // ESLint 配置文件
├── .gitignore // Git 忽略文件
├── .prettierignore // Prettier 忽略文件
├── .prettierrc // Prettier 配置文件
├── .proxy.ts.example // webpack-dev-server 代理配置示例文件
├── .stylelintrc // Stylelint 配置文件
├── babel.config.js // Babel 配置文件
├── LICENSE // 开源协议
├── package.json
├── README.md // 自述文档
├── tsconfig.json // Typescript 配置
└── yarn.lock // yarn 依赖包缓存