【react】react+umi4项目搭建

news/2025/1/26 11:47:53/

 

目录

环境信息

创建项目


 

环境信息

开发环境 Node:18   npm  10(9也可以)    cnpm

如果需要安装环境或者切换node版本可以查看       node安装和配置 

创建项目

官网也有相关的教程

umi.js

使用 npx create-umi@latest在项目目录创建项目

npx create-umi@latest

上述代码输入后出现以下四个问题

目标文件夹的名称是什么?(随便起名)
选择 Umi应用模板 (有四个)想选哪个选哪个    按键∧∨ 上下选择


选择Npm客户端。开发环境下载的哪个选那个就可以


选择 Npm 注册表    选择淘宝镜像


完成后 cd 到创建的项目根目录文件下,然后输入npm run dev

如果有cnpm的话可以输入cnpm run dev

 按住Ctrl键+鼠标左键单击,点击:http://localhost:8001

 显示以下网页,以下网页是选择了Ant Design Pro

打开项目文件中的package.json中没有react

输入npm i umi react react-dom

 再次查看package.js

 

配置文件

可以看出大量的配置文件都在 .umirc.ts文件, 然后再看这个官方教程的解释

设置全局加载页面

1.根据文档,我们可以看出在src下loading.tsx就是全局的加载动画页面

2.在src下新建global.less,写一下loading动画的居中和loading的css动画

loading.tsx

export default () => {return (<div className="global-loading-body"><div className="loader">Loading...</div></div>);
};

global.less

.global-loading-body {height: 100vh;width: 100%;display: flex;justify-content: center;align-items: center;.loader {color: #1a88ff;font-size: 12px;margin: 50px auto;width: 1em;height: 1em;border-radius: 50%;position: relative;text-indent: -9999em;-webkit-animation: load4 1s infinite linear;animation: load4 1.3s infinite linear;-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);}@-webkit-keyframes load4 {0%,100% {box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;}12.5% {box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}25% {box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}37.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em,0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;}50% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em,0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;}62.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;}75% {box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em,2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em,-2em -2em 0 0;}87.5% {box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;}}@keyframes load4 {0%,100% {box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;}12.5% {box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}25% {box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0,0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;}37.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em,0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;}50% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em,0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;}62.5% {box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;}75% {box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em,2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em,-2em -2em 0 0;}87.5% {box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em,0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;}}
}

 

 

 

 

 

待定更新中

 

 

 

 

码字不易,各位大佬点点赞呗

 

 


http://www.ppmy.cn/news/1565987.html

相关文章

如何在data.table中处理缺失值

&#x1f4ca;&#x1f4bb;【R语言进阶】轻松搞定缺失值&#xff0c;让数据清洗更高效&#xff01; &#x1f44b; 大家好呀&#xff01;今天我要和大家分享一个超实用的R语言技巧——如何在data.table中处理缺失值&#xff0c;并且提供了一个自定义函数calculate_missing_va…

谈谈对JavaScript 中的事件冒泡(Event Bubbling)和事件捕获(Event Capturing)的理解

JavaScript 中的事件冒泡&#xff08;Event Bubbling&#xff09;和事件捕获&#xff08;Event Capturing&#xff09;&#xff0c;是浏览器在处理事件时采用的两种机制&#xff0c;它们在事件的传播顺序上有显著区别。这两种机制帮助开发者在事件触发时&#xff0c;能够以不同…

详解单片机学的是什么?(电子硬件)

大家好&#xff0c;我是山羊君Goat。 单片机&#xff0c;对于每一个硬件行业的从业者或者在校电子类专业的学生&#xff0c;相信对于这个名词都不陌生&#xff0c;但是掌没掌握就另说了。 那单片机到底学的是什么呢&#xff1f; 其实单片机在生活中就非常常见&#xff0c;目前…

ray.rllib 入门实践-3: 配置参数列表

前言&#xff1a; 上一个博客详细介绍了配置rllib算法的几种方式&#xff0c;并推荐了用 AlgorithmConfig 类去创建配置对象&#xff0c;然后再配置对象中&#xff0c;根据代码提示配置相关参数。AlgorithmConfig 中的可配置参数有很多&#xff0c; 使用时可以去对应的源码查看…

lombok 没生效 java: 找不到符号 符号: 方法 setName(java.lang.String)

今天使用lombok 添加了 Data注解 set方法却没起效 解决方法 1 给lombok 添加版本号 再maven刷新下 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.8</version><optional>…

Maven 项目管理

对于使用Mave进行项目构建的学习 是学习SpringBoot时的补充学习内容 主要是关于一些理论的补充 实际使用还是会继续学习使用SpringBoot 1 简介 Maven 项目管理工具 将项目开发和管理过程抽象成一个项目对象模型&#xff08;POM&#xff09; 作用&#xff1a;1.项目构建&#xf…

.NET Framework

.NET Framework 是微软推出的一个软件开发平台&#xff0c;主要用于构建和运行 Windows 应用程序。它是 .NET 生态系统的早期版本&#xff0c;专注于 Windows 平台&#xff0c;并提供了丰富的类库和运行时环境。 注意事项 跨平台限制&#xff1a;.NET Framework 主要适用于 W…

高级java每日一道面试题-2025年01月24日-框架篇[SpringMVC篇]-SpringMVC常用的注解有哪些?

如果有遗漏,评论区告诉我进行补充 面试官: SpringMVC常用的注解有哪些? 我回答: 一、核心注解详解 1. Controller 作用&#xff1a;将一个普通的Java类标记为处理请求的控制器。 应用场景&#xff1a;在Spring MVC中起到了路由请求和处理业务逻辑的作用&#xff0c;并注册…