react项目引入antd框架方式以及遇到的一些坑

 更新时间:2023年03月28日 14:45:16   作者:我不淑女girl  
这篇文章主要介绍了react项目引入antd框架方式以及遇到的一些坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

react项目引入antd框架及遇到的一些坑

1,用create-react-app创建项目

create-react-app demo //demo为项目名称

2.在项目中安装antd

npm install -D antd

3.安装 babel-plugin-import

npm install babel-plugin-import --save

4.修改package.json文件,在根目录下

  "babel": {
    "plugins": [
      [
        "import",
        {
          "librayName": "antd",
          "style": true
        }
      ]
    ]
  }

5.在 "src/App.js"文件下使用antd

这时候样式是乱的

需要在App.css(即使用antd的这个文件的css文件)中引入antd.css文件

@import '~antd/dist/antd.css';

这样就一切正常啦

react的antd框架搭建基本布局

1.创建项目文件夹

并安装react-typecript项目

命令如下

  • mkdir react-antd
  • cd react-antd
  • yarn create @umijs/umi-app  如果创建失败可以用 cnpm create @umijs/umi-app 命令
  • yarn  如果用cnpm安装 cnpm install

2.运行antd项目

命令 npm start 

在浏览器输入 http://localhost:8000 显示如下,即安装成功

3.用vs code编辑器打开项目

初始化项目目录如下

4.编写基本布局

创建layouts目录,新建index.tsx和index.less文件,配置路由文件

  • mkdir layouts
  • cd layouts
  • mkdir index.tsx
  • mkdir index.less

项目/src/layouts/index.tsx代码段如下

import { Layout } from 'antd';
 
const { Header, Footer, Sider, Content } = Layout;
 
export default function layout(props: any) {
  return (
    <>
      <Layout>
        <Sider>Sider</Sider>
        <Layout>
          <Header>Header</Header>
          <Content>Content</Content>
          <Footer>Footer</Footer>
        </Layout>
      </Layout>
    </>
  );
}

项目/.umirc.ts代码段如下

import { defineConfig } from 'umi';
 
export default defineConfig({
  nodeModulesTransform: {
    type: 'none',
  },
  routes: [
    {
      exact: false,
      path: '/',
      component: '@/layouts/index',
      routes: [
        {
          exact: true,
          path: '/',
          component: '@/layouts/index',
        },
      ],
    },
  ],
  fastRefresh: {},
});

编写文件如上两图,浏览器显示效果如下

4.在项目/src目录里创建global.css全局css文件

将#root的高度改为100%,代码如下

#root {
    height: 100%;
}

5.编写项目/src/layouts/index.tsx文件如下

import { Layout } from 'antd';
import './index.less'
 
const { Header, Footer, Sider, Content } = Layout;
 
export default function layout(props: any) {
  return (
    <>
      <Layout className="layout-main">
        <Sider>Sider</Sider>
        <Layout>
          <Header>Header</Header>
          <Content>Content</Content>
          <Footer>Footer</Footer>
        </Layout>
      </Layout>
    </>
  );
}

引入index.less文件,在最外层Layout组件添加类layout-main

index.less编写如下

.layout-main {
  height: 100%;
}

查看浏览器显示如下,基本的后台布局完成

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决React报错React Hook useEffect has a missing dependency

    解决React报错React Hook useEffect has a missing dependency

    这篇文章主要为大家介绍了解决React报错React Hook useEffect has a missing dependency,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • React useEffect的理解与使用

    React useEffect的理解与使用

    useEffect是react v16.8新引入的特性。我们可以把useEffect hook看作是componentDidMount、componentDidUpdate、componentWillUnmounrt三个函数的组合
    2022-12-12
  • React中前端路由的示例代码

    React中前端路由的示例代码

    本文主要介绍了React中前端路由的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • React子组件调用父组件方法获取的数据不是最新值的解决方法

    React子组件调用父组件方法获取的数据不是最新值的解决方法

    这篇文章主要介绍了React子组件调用父组件方法获取的数据不是最新值的解决方法,文中通过代码示例介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-09-09
  • react实现头部导航,选中状态底部出现蓝色条块问题

    react实现头部导航,选中状态底部出现蓝色条块问题

    这篇文章主要介绍了react实现头部导航,选中状态底部出现蓝色条块问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 详解使用WebPack搭建React开发环境

    详解使用WebPack搭建React开发环境

    这篇文章主要介绍了详解使用WebPack搭建React开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • react中axios结合后端实现GET和POST请求方式

    react中axios结合后端实现GET和POST请求方式

    这篇文章主要介绍了react中axios结合后端实现GET和POST请求方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • React Hooks核心原理深入分析讲解

    React Hooks核心原理深入分析讲解

    这篇文章主要介绍了react hooks实现原理,文中给大家介绍了useState dispatch 函数如何与其使用的 Function Component 进行绑定,节后实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • React diff算法原理详细分析

    React diff算法原理详细分析

    经典的diff算法中,将一棵树转为另一棵树的最低时间复杂度为 O(n^3),其中n为树种节点的个数。假如采用这种diff算法,一个应用有1000个节点的情况下,需要比较十亿次才能将dom树更新完成,显然这个性能是无法让人接受的
    2022-11-11
  • React封装高阶组件实现路由权限的控制详解

    React封装高阶组件实现路由权限的控制详解

    这篇文章主要介绍了React封装高阶组件实现路由权限的控制,在React中,为了实现安全可靠的路由权限控制,可以通过多种方式来确保只有经过授权的用户才能访问特定路径下的资源,下面来介绍封装高阶组件控制的方法,需要的朋友可以参考下
    2025-02-02

最新评论