umi+react+dva简单搭建一个项目框架(配置layout、antd、路由等)

news2024/11/17 22:17:05

目录

  • umi+react+dva简单搭建一个项目框架(配置layout、antd、路由等)
    • 创建项目
    • 引入antd
    • 抽离配置 config
      • 01: config / config.js
      • 02: config / router / router.js
      • 03:配置layout
        • 03_1 config.js
        • 03_2 router.js
        • 效果

umi+react+dva简单搭建一个项目框架(配置layout、antd、路由等)

创建项目

  • 新建一个目录 umi3-pro
yarn create @umijs/umi-app
npm create @umijs/umi-app
yarn 
yarn start

引入antd

  • 直接引入使用,umi内置了antd
import { Button } from "antd"
<Button type="primary">Primary Button</Button>

抽离配置 config

  • 删除根目录下的.umirc.ts 新建根目录下config/config.ts
  • router的拆分 config / router / router.js

01: config / config.js

import { defineConfig } from 'umi';
import routes from './router/routes';
export default defineConfig({
  nodeModulesTransform: {
    type: 'none',
  },
  routes,
  // antd的配置
  antd:{
    dark:false // 开启暗黑主题
  },
  fastRefresh: {},
});

02: config / router / router.js

const routes =  [
  { path: '/', component: '@/pages/index' },
  { path: '/test', component: '@/pages/test' },
]

export default routes

03:配置layout

03_1 config.js
import { defineConfig } from 'umi';
import routes from './router/routes';
export default defineConfig({
  nodeModulesTransform: {
    type: 'none',
  },
  routes,
  // antd的配置
  antd:{
    dark:false // 开启暗黑主题
  },
  fastRefresh: {},
  layout: {
    // 支持任何不需要 dom 的
    // https://procomponents.ant.design/components/layout#prolayout
    name: 'Ant Design',
    locale: true,
    layout: 'side',
  },
});

03_2 router.js
const routes = [
  // 非layout菜单 完整页面
  {
    path: '/login',
    component: '@/pages/login/Login',
    layout: false,
  },
  // layout菜单
  { path: '/', component: '@/pages/index', name: '首页' },
  { path: '/test', component: '@/pages/test', name: '测试' },
  // 详情页 非layout菜单 test的详情页
  {
    path: '/test/detail',
    component: '@/pages/test/Detail',
  },
  // 嵌套页面
  {
    path: '/about',
    name: '关于',
    routes: [
      {
        path: '/about/about_1',
        component: '@/pages/about/about_1/About_1',
        name: '关于1',
      },
      {
        path: '/about/about_2',
        component: '@/pages/about/about_2/About_2',
        name: '关于2',
      },
    ],
  },
];

export default routes;

效果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1036271.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue系列(三)之 基础语法下篇【事件处理,表单综合案例,组件通信】

一. 事件处理 在 Vue.js 中&#xff0c;v-on 指令被用于监听 DOM 事件&#xff0c;并在事件触发时执行相应的方法&#xff0c;这些方法就是事件处理器。v-on 指令有简写形式 &#xff0c;例如 click"handleClick" 会监听点击事件并执行 handleClick 方法。 事件处理…

视频剪辑软件Premiere Pro 2022 mac(pr2022) v22.6.2中文版

Premiere Pro 2022 mac不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理&#xff0c;pr2022 mac还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效果预设等操作&#xff0c;功能强大。 ​Premie…

服务注册发现_什么是服务治理

为什么需要服务治理 在没有进行服务治理前,服务之间的通信是通过服务间直接相互调用来实现的。 过程&#xff1a; 武当派直接调用峨眉派和华山派&#xff0c;同样&#xff0c;华山派直接调用武当派和峨眉派如果系统不复杂&#xff0c;这样调用没什么问题。但在复杂的微服务系统…

七、高斯朴素贝叶斯算法(Gaussian NB,Gaussian Naive Bayes)(有监督学习)

高斯朴素贝叶斯Gaussian Naive Bayes (GaussianNB). 可通过 partial_fit 对模型参数进行在线更新 一、算法思路 所谓高斯贝叶斯指的便是假定样本每个特征维度的条件概率均服从高斯分布&#xff0c;进而再根据贝叶斯公式来计算得到新样本在某个特征分布下其属于各个类别的后验…

计算机组成原理之硬件的基本组成,深入介绍两大计算机结构体系,从底层出发认识计算机。

大家好&#xff0c;欢迎阅读《计算机组成原理》的系列文章&#xff0c;本系列文章主要的内容是从零学习计算机组成原理&#xff0c;内容通俗易懂&#xff0c;大家好好学习吧&#xff01;&#xff01;&#xff01; 更多的优质内容&#xff0c;请点击以下链接查看哦~~ ↓ ↓ ↓ …

【Log】为类中的所有日志打印添加前缀

文章目录 前言验证探索后记 前言 有没有一种办法&#xff0c;在一个类中(业务逻辑)。logger.info 的时候自动加上日志前缀&#xff0c;这样子查日志更方便。stackoverflow 上面有对该问题的讨论&#xff0c;实测可用&#xff0c;这里记录一下。 来自stackoverflow 简洁可用的…

离线部署 python 3.x 版本

文章目录 离线部署 python 3.x 版本1. 下载版本2. 上传到服务器3. 解压并安装4. 新建软连信息5. 注意事项 离线部署 python 3.x 版本 1. 下载版本 python 各版本下载地址 本次使用版本 Python-3.7.0a2.tgz # linux 可使用 wget 下载之后上传到所需服务器 wget https://www.py…

使用Go开源的一款性能监控软件,开箱即用,自动化图表生成

使用Go开源的一款性能监控软件&#xff0c;开箱即用&#xff0c;自动化图表生成。 uptrace介绍 uptrace是一体化工具&#xff0c;优化性能并监视错误和日志的开源监控系统。Uptrace是一个经济高效的跟踪解决方案&#xff0c;可帮助您监控、了解和优化复杂的分布式系统。对您的…

运行springBoot项目

本文背景&#xff1a;接手后端Maven管理的springBoot项目&#xff0c;但是不太清楚具体怎么运行项目 写此文章作为纪念 参考链接&#xff1a;IDEA运行SpringBoot项目&#xff08;图文详细讲解&#xff09;_idea项目运行_叫我小楠的博客-CSDN博客 步骤如下&#xff1a; 1.设…

3D打印预处理软件——CHITUBOX Pro 1.4.1

CHITUBOX PRO登场 革命性的3D打印数据处理软件&#xff0c;让你发挥3D打印的无限潜力 支持多种主流CAD文件格式 除了传统的stl和obj文件&#xff0c;CHITUBOX Pro还支持导入各种主流的CAD文件格式&#xff0c;包括3ds、3mf、3dm、stp、step、wrl、x3d、sat、sab、dae、dxf、f…

uniapp合法域名配置

首先打开微信开发者平台 找到开发管理 打开开发设置 找到服务器域名>修改 request 写入域名前缀即可 > 完成 重启小程序即可 感谢观看

React redux更新数据的诡异特征==》彻底掌握redux更新state机制的精髓

此文章是跟随我上一篇文章《Redux Toolkit中action派发但state值不更新的原因》写的。 本来一切都搞定了&#xff0c;此时我突发奇想&#xff1a; 如果让api服务端不发送包含x-pagination的header信息&#xff0c;web端会不会报错。因为按照web端 redux原有的逻辑&#xff1a;…

【PowerShell】PowerShell的Core版本的额外配置

在PowerShell 7.1 安装完成后,默认情况下打开PowerShell 会直接进入到系统内置的PowerShell,如果希望通过远程连接或者PowerShell Web Access 进入到PowerShell 7环境的界面,就需要进行环境的再配置才能实现PowerShell 7.1 的环境连接。需要为外部的环境提供连接的话需要按照…

GNU C中({})表达式的返回值

文章目录 先放结论废话({})复合表达式介绍最后的废话 先放结论 ({子表达式1;子表达式2;})是GNU C中的一个拓展&#xff0c;返回值是最后一个表达式的返回值&#xff0c;也就是子表达式2的返回值。 废话 这个表达式是在看Linux源码的时候发现的&#xff08;内核小白随便翻看到的…

将强化学习引入NLP:原理、技术和代码实现

目录 1. 强化学习简介1.1 什么是强化学习&#xff1f;1.2 强化学习的核心组件1.2.1 智能体 (Agent)1.2.2 状态 (State)1.2.3 动作 (Action)1.2.4 奖励 (Reward) 2. 强化学习与NLP的结合2.1 为什么在NLP中使用强化学习&#xff1f;2.2 强化学习在NLP中的应用场景2.2.1 对话系统2…

SAP Oracle表空间扩展技术手册

1、DBACOCKPIT下查看表空间 当表空间不足(达到99%)时,需要按以下步骤扩充表空间(每次扩充20000M,20G): (也可以通过DB13,DB02查看表空间) 新浪博客 Tablespace PSAPSR3 is 100% used | SAP Community Oracle是通过增加数据文件的方式来为表空间扩容。为指定表空间增…

【2023全新保姆级教图文教程】三分钟快速安装好Anacaonda3+Pycharm运行Python

&#x1f60e; 作者介绍&#xff1a;我是程序员洲洲&#xff0c;一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公粽号&#xff1a;程序员洲洲。 &#x1f388; 本文专栏&#xff1a;本文…

抖音seo账号矩阵源码系统

1. 开通多个抖音账号&#xff0c;并将它们归纳为一个账号矩阵系统。 2. 建立一个统一的账号管理平台&#xff0c;以便对这些账号进行集中管理&#xff0c;包括账号信息、内容发布、社区交互等。 3. 招募专业的运营团队&#xff0c;对每个账号进行精细化运营&#xff0c;包括内…

恢复删除文件?不得不掌握的4个方法!

“删除了的文件还可以恢复吗&#xff1f;有个文件我本来以为不重要了&#xff0c;就把它删除了&#xff0c;没想到现在还需要用到&#xff01;这可怎么办&#xff1f;有没有办法找回来呢&#xff1f;” 重要的文件一旦丢失或误删可能都会对我们的工作和学习造成比较大的影响。怎…

【JavaScript保姆级教程】Javascript常量

文章目录 前言一、常量1.1 常量是什么1.2 常量的作用 二、示例代码2.1 示例1&#xff1a;声明一个常量2.2 示例2&#xff1a;常量的命名规则2.3 示例3&#xff1a;常量与变量的区别 总结 前言 欢迎来到【JavaScript保姆级教程】&#xff01;在本篇教程中&#xff0c;我们将讨论…