返回
脚手架搭建:React+TS 完美融合
前端
2023-11-11 19:39:58
1. 项目初始化
npx create-react-app my-app --template @typescript/template
或者直接使用yarn:
yarn create react-app my-app --template @typescript/template
项目初始化后,cd进入项目目录,安装必要的依赖包:
yarn add webpack webpack-cli webpack-dev-server css-loader style-loader file-loader url-loader html-webpack-plugin mini-css-extract-plugin terser-webpack-plugin typescript @types/react @types/react-dom @types/node
2. 配置Webpack
在项目根目录创建一个webpack.config.js文件,并添加以下内容:
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const TerserPlugin = require('terser-webpack-plugin');
module.exports = {
entry: './src/index.tsx',
output: {
path: path.resolve(__dirname, 'build'),
filename: 'main.js',
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/,
},
{
test: /\.css$/,
use: [MiniCssExtractPlugin.loader, 'css-loader'],
},
{
test: /\.scss$/,
use: [MiniCssExtractPlugin.loader, 'css-loader', 'sass-loader'],
},
{
test: /\.(png|jpg|gif)$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'images/',
},
},
],
},
{
test: /\.svg$/,
use: ['@svgr/webpack'],
},
{
test: /\.(woff|woff2|eot|ttf|otf)$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]',
outputPath: 'fonts/',
},
},
],
},
],
},
plugins: [
new HtmlWebpackPlugin({
template: './public/index.html',
filename: 'index.html',
}),
new MiniCssExtractPlugin({
filename: '[name].[contenthash].css',
}),
new TerserPlugin({
terserOptions: {
compress: {
drop_console: true,
},
},
}),
],
};
3. 启动开发服务器
yarn start
或者使用npm:
npm start
这将启动一个开发服务器,您可以在浏览器中访问您的应用程序。
4. 构建生产版本
yarn build
或者使用npm:
npm run build
这将构建一个生产版本的应用程序,并将其输出到build目录中。
5. 部署到服务器
您可以使用各种方法将应用程序部署到服务器。一些流行的选择包括:
- Netlify
- Github Actions
- Docker
- K8s
有关如何将应用程序部署到这些平台的更多信息,请参阅相应的文档。
6. 持续集成和持续交付
您可以使用持续集成和持续交付工具来自动化您的构建、测试和部署过程。一些流行的选择包括:
- Jenkins
- Travis CI
- CircleCI
- GitLab CI
有关如何使用这些工具的更多信息,请参阅相应的文档。
7. 性能优化
为了优化应用程序的性能,您可以使用各种技术。一些流行的选择包括:
- 代码拆分
- 缓存
- 压缩
- 懒加载
- 预加载
有关如何使用这些技术来优化应用程序的性能的更多信息,请参阅相应的文档。
8. 故障排除
如果您在构建或运行应用程序时遇到问题,可以查看以下资源:
- Webpack文档
- React文档
- TypeScript文档
- Stack Overflow
- Github
我希望本教程对您有所帮助。如果您有任何问题,请随时在评论中提出。