创建项目(React+umi+typeScript)

news2024/11/28 2:32:12

项目框架搭建的方式

  • react脚手架
  • Ant-design官网
    • 一、安装方式npm
    • 二、安装方式yarn
    • 三、安装方式umi dev

react脚手架

命令行:

npx create-react-app myReactName

项目目录结构:
在这里插入图片描述
浏览器运行,端口号3000:
在这里插入图片描述

Ant-design官网

一、安装方式npm

前提:react ES2015,nodejs v8+
命令行:

npx @umijs/create-umi-app

项目目录结构:
在这里插入图片描述

浏览器运行,端口号3000:yarn start失败

二、安装方式yarn

前提:yarn全局安装配置
命令行:

推荐使用yarn安装
yarn create @umijs/umi-app

项目目录结构:
在这里插入图片描述
新建路由以及子路由的配置:
前提:umi官网路由

01定义:
在 Umi 应用是单页应用,页面地址的跳转都是在浏览器端完成的,不会重新请求服务端获取 html,html 只在应用初始化时加载一次。所有页面由不同的组件构成,页面的切换其实就是不同组件的切换,你只需要在配置中把不同的路由路径和对应的组件关联上。
路由类型配置:
02分类:
1.开启 hash 模式,让 build 之后的产物包含 hash 后缀。通常用于增量发布和避免浏览器加载缓存。
2.设置路由 history 类型。
03通过命令创建一个/peoducts路由
npx umi g page products --typescript
04.umirc.ts中配置路由

子路由配置:
步骤:

01配置子路由,通常在需要为多个路径增加 layout 组件时使用。
02然后在 src/layouts/index 中通过 <Outlet/> 渲染子路由,但是此处遇见了问题。
问题描述:
模块“"umi"”没有导出的成员“Outlet”。
解决思路:
1.主要是 ts 对 umi 的识别问题;
2.查看下 tsconfig.json 文件的配置
03最后,访问 /list 和 /admin 就会带上 src/layouts/index 这个 layout 组

代码示意图:
在这里插入图片描述

浏览器运行,端口号8000:yarn start
在这里插入图片描述

三、安装方式umi dev

前提:全局安装umi

安装umi:
npm install umi -g
查看umi是否安装成功:
umi -v

命令行:

创建页面:
umi g page index
umi g page users

项目目录结构:
在这里插入图片描述

浏览器运行,端口号3000:

umi dev
01这一步会直接打开页面,并且pages文件夹下会多一个.umi目录
02.umi目录是一个临时目录
1.可以再这里做一些验证,不要直接修改代码
2.umi重启或者pages下的文件修改  会重新生成

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

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

相关文章

zk-STARK/zk-SNARK中IP,PCP,IPCP,IOP,PIOP,LIP,LPCP模型介绍

我们的目标是构造 zkSNARK。在我们的目标场景中&#xff0c;Prover 只需要发送一个简短的证明字符串给 Verifier&#xff0c;而 Verifier 不需要给 Prover 发送任何消息。 直接构造一个满足这个场景的 zkSNARK 可能会很困难。一个更灵活的方式是在先在理想模型下构造证明系统&…

SocketPro完整使用教程分享,手把手指导

SocketPro是一款外贸与跨境业务&#xff0c;设计师&#xff0c;海外留学生经常使用的工具。 那么&#xff0c;到底该如何使用SocketPro这款工具&#xff0c;实现自己的业务需求呢&#xff1f;这里放一个以前其他大佬关于SocketPro使用体验的测评: 上面的SocketPro使用测评&…

【Java并发编程】线程安全(一)Synchronized原理

Synchronized底层实现 简单来说&#xff0c;Synchronized关键字的执行主体是线程对象&#xff0c;加锁是通过一个锁对象来完成的是&#xff0c;而锁对象底层关联了一个c源码的monitor的对象&#xff0c;monitor对象底层又对应了操作系统级别的互斥锁&#xff0c;同一时刻只有一…

历时半年,我终于阿里上岸了,附面经和Java非科班学习心得

个人经历 本科双非化学&#xff0c;跨考了电子硕士&#xff0c;研究生依然双非。无互联网实习&#xff0c;无比赛无论文。&#xff08;研究生研究方向是车辆电子和楼宇自动化&#xff0c;有自动化和高校实训讲师相关的实习经历&#xff09; 21年11开始学Java准备秋招。 阿里上…

你真的懂二分法吗?

二分法 二分法非常让我们头痛&#xff0c;不论对于初学者&#xff0c;还是对于有一定编程经验的人来讲&#xff0c;我们都会以为这个思想很简单&#xff0c;而不去在意&#xff0c;可是在实际运用中我们在处理边界条件的时候&#xff0c;往往会要不写出了死循环&#xff0c;要不…

NVM安装与配置教程

一、NVM简介 在项目开发过程中&#xff0c;使用到vue框架技术&#xff0c;需要安装node下载项目依赖&#xff0c;但经常会遇到node版本不匹配而导致无法正常下载&#xff0c;重新安装node却又很麻烦。为解决以上问题&#xff0c;nvm&#xff1a;一款node的版本管理工具&#xf…

Mysql 索引(一)—— 主键索引的底层原理

索引的作用是提升Mysql的检索速度。 如果没有索引&#xff1a;若我们要在几百万条记录中找出一个名为“张三”的人&#xff0c;这个时候我们只能逐条遍历记录&#xff0c;直至找到这个人&#xff1b;如果有索引&#xff1a;假设名为“张三”的人所在记录的索引为 999&#xff…

【构建工具】webpack5 的性能优化和核心流程

文章目录webpack5 构建性能的极致优化一、使用最新版webpack二、使用 lazyCompilation三、约束 Loader 执行范围四、使用 noParse/externals 跳过文件编译五、开发模式禁用产物优化六、最小化 watch 监控范围七、跳过 TS 类型检查八、优化 ESLint 性能九、source-map简化十、设…

Linux:基于libevent读写管道代码,改进一下上一篇变成可以接收键盘输入

对上一篇进行改进&#xff0c;变成可以接收键盘输入&#xff0c;然后写入管道&#xff1a; 读端代码&#xff1a; #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <s…

01-MySQL基础-简介安装navicat使用SQL(DDL、DML、(DCL)、DML)

文章目录MySQL基础1&#xff0c;数据库相关概念1.1 数据库1.2 数据库管理系统1.3 常见的数据库管理系统1.4 SQL2&#xff0c;MySQL2.1~2.4 mysql安装2.5 MySQL数据模型3&#xff0c;SQL概述3.1 SQL简介3.2 通用语法3.3 SQL分类4&#xff0c;DDL:操作数据库4.1 查询4.2 创建数据…

PCL 平面拟合方法 对比

目录 一、最小二乘法 (Least Squares, LS) 二、采样一致性&#xff08;Sample Consensus&#xff09;方法 2.1 pcl::LeastMedianSquares (LMedS) 2.2 pcl::RandomSampleConsensus (RANSAC) 2.3 pcl::MEstimatorSampleConsensus (MSAC) 2.4 pcl::RandomizedRandomSampleCo…

【Tomcat】IDEA编译Tomcat源码-手把手教程

一、环境准备Tomcat不同版本之间有一定的兼容性问题~如下图所示&#xff1a;官网地址&#xff1a;https://tomcat.apache.org/whichversion.html下载tomcat9官网上面的源码&#xff1a;这一篇文章主要是带着大家在自己的IDEA跑起来一个Tomcat。使用的版本是Tomcat9.0.55 和 JDK…

如何写出更加契合浙大MBA项目提面申请资料?

现在已经是2月中旬了&#xff0c;最近看到上海很多院校都已经公布了提前面批次相应时间了&#xff0c;等浙大复试工作结束&#xff0c;马上提前面批次时间也会出来。本人2023浙大提面也拿到了优秀&#xff0c;结合本人经验&#xff0c;今天给大家分享下申请材料该如何撰写&…

【论文阅读】Anti-Adversarially Manipulated Attributions for WSSS

一篇CVPR2021上的论文&#xff0c;用于弱监督分割及半监督分割 论文标题&#xff1a; Anti-Adversarially Manipulated Attributions for Weakly and Semi-Supervised Semantic Segmentation&#xff08;AdvCAM&#xff09; 作者信息&#xff1a; 代码地址&#xff1a; htt…

浅谈volatile关键字

文章目录1.保证内存可见性2.可见性验证3.原子性验证4.原子性问题解决5.禁止指令重排序6.JMM谈谈你的理解6.1.基本概念6.2.JMM同步规定6.2.1.可见性6.2.2.原子性6.2.3.有序性6.3.Volatile针对指令重排做了啥7.你在哪些地方用过Volatile&#xff1f;volatile是Java提供的轻量级的…

【消费战略】解读100个食品品牌丨元气森林 6年百亿的饮品黑马成功之道

元气森林成立于2016年&#xff0c;短短六年时间取得了近百亿营收的奇迹&#xff0c;成为让可口可乐、百事、娃哈哈、农夫山泉等消费巨头都无法忽视的对手。六年的成长堪比行业前辈20多年的积累&#xff0c;从这个角度而言&#xff0c;塔望咨询认为元气森林是成功的&#xff0c;…

电影《蚁人与黄蜂女:量子狂潮》观后感

上周看了电影《蚁人与黄蜂女&#xff1a;量子狂潮》&#xff0c;整体有一种像是打开了一座新世界的大门&#xff0c;探索新知的感觉&#xff0c;也许是电影3D效果或者现场原因&#xff0c;给人展示量子世界的时候&#xff0c;总是看不清楚画面细节&#xff0c;稍微有些模糊&…

一文读懂Linux中的进程、线程

一文读懂Linux中的进程、线程 大家好&#xff0c;我是木荣君&#xff0c;这次我们来聊一聊Linux中进程和线程。进程和线程的概念非常重要&#xff0c;本篇来详细介绍下这两者的概念。我们在实际开发中&#xff0c;经常会听到这两个词&#xff0c;如果我们不了解这些词背后的概念…

深入浅出C++ ——二叉搜索树

文章目录一、二叉搜索树概念二、二叉搜索树操作1. 二叉搜索树的查找2. 二叉搜索树的插入3. 二叉搜索树的删除三、二叉搜索树的实现四、二叉搜索树的性能分析一、二叉搜索树概念 二叉搜索树又称二叉排序树/二次查找树&#xff0c;它是一棵空树或者是每颗子树都具有以下性质的二叉…

Spring Boot 框架 集成 Knife4j(内含源代码)

Spring Boot 框架 集成 Knife4j&#xff08;内含源代码&#xff09; 源代码下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87480176 目录Spring Boot 框架 集成 Knife4j&#xff08;内含源代码&#xff09;源代码下载链接地址&#xff1a;[htt…