搭建完整react项目(React)

一、创建 React 项目
create-react-app 项目名称
二、下载依赖包
1、下载路由
yarn add react-router-dom@5.3.0
npm i react-router-dom@5.3.0
2、下载状态机
3、下载 antd
npm i antd
yarn add antd
三、配置相关插件
1、配置路由
2、配置状态机
3、配置 antd

antd 框架中的组件都是按需引入。但是,组件的样式可以选择完整引入或者按需引入。

  1. 完整引入
    在项目的 index.js 中引入以下代码即可:
import "antd/dist/antd.css"

引入完成后就可以开始用 antd 进行开发了。

报错处理:

如果启动项目时,终端出现类似以下报错:

在这里插入图片描述

是因为 React 中的其中一个插件 react-scripts 更新了,因此我们需要将该插件降级到之前的版本,执行以下命令即可:

yarn add react-scripts@4.0.3
npm i react-scripts@4.0.3
  1. 按需引入
    按需引入,指的是在项目打包时,只打包我们使用了的组件的样式。
4、按需引入的完整配置
  1. 下载依赖包
yarn add react-app-rewired customize-cra babel-plugin-import
react-app-rewired:更改启动命令,通过启动命令的方式来实现样式的按需打包;
customize-cra:实现样式的按需打包;
babel-plugin-import:语法编译,例如对 less 语法进行转换;
  1. 配置按需引入

在项目根目录中创建一个 config-overrides.js 文件,在该文件中进行按需打包的相关配置:

const { override, fixBabelImports } = require('customize-cra');

module.exports = override(
    // 检测项目中是否使用了 import 语句
    fixBabelImports('import', {
        libraryName: 'antd', // 检测通过 import 引入的文件是否是 antd
        libraryDirectory: 'es', // 检测是否使用了 es 文件
        style: 'css'  // 自动打包引入样式
    })
)

完成以上配置后,之前在 index.js 中如果使用了完整引入的,需要把对应的代码删掉:

// import “antd/dist/antd.css”

  1. 更改启动命令

将 package.json 文件中的 scripts 属性的值全部替换:

{
    "scripts": {
        "start": "react-app-rewired start",
        "build": "react-app-rewired build",
        "test": "react-app-rewired test",
        "eject": "react-scripts eject"
    },
}

启动项目时,还是使用 yarn start 或 npm start。

5、配置主题颜色

因为 antd 内部使用的是 less,因此如果我们要更改主题颜色,需要下载 less 的依赖包。

  1. 下载
yarn add less less-loader@5.0.0
  1. 修改配置文件
对项目根目录的 config-overrides.js 进行修改:

const { override, fixBabelImports, addLessLoader } = require('customize-cra');

module.exports = override(
    // 检测项目中是否使用了 import 语句
    fixBabelImports('import', {
        libraryName: 'antd', // 检测通过 import 引入的文件是否是 antd
        libraryDirectory: 'es', // 检测是否使用了 es 文件
        style: true  // 自动打包引入样式
    }),
    addLessLoader({
        modifyVars: {
            "@primary-color": '#a0d911',  // 更改主题颜色
        },
        javascriptEnabled: true
    })
)
  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值