在Umijs组件中我们不像vue那样可以看到组件的路径,在umijs刚刚搭建完成我们看不到组件的路径,所以我们要手动进行一些小小的改动,就可以看到了

一,应用前的准备

1、在当前项目文件路径下的终端输入 npm umi g page login posts/post posts/create命令

会实现在pages文件目录下添加login的相关两个文件,在posts文件目录下添加post和create的相关文件

2.找到umirc.ts,在里边添加routes里也有组件的path和compoment(path就是路由路径,compoment就是指定路由组件)注意,在指定路由组件的时候,路径默认是从pages文件夹下

export default {npmClient: 'npm',routers:[ {path:'/',component:'./index'},{path:'docs',component:'./docs'},{path:'/posts/create',component:'./posts/create'},{path:'/login',component:'./login'},{path:'posts/:postId',component:'./posts/post'}]
};

这样我们就把组件添加到了这个项目中,我们运行发现在界面看不到,这是由于我们主页并没有设置跳转到我们新添加的组件的链接

3.在src目录下找到laytous中的index.tsx就是我们的首页配置,运用Link命令(组件式)进行链接

  <li><Link to='/login'>login</Link></li>

我们的组件就添加好了

4.我们同样可以使用history的方法来进行页面的跳转,但是需要注意的是,我们如果使用history(命令式)的话,需要先引入history,Link方法其实也需要引入,只是默认已经引入了

import { history } from 'umi';

然后我们就可以使用history的方法了(history.push(),history.back,history.go())例如用history.push方法实现登陆界面的跳转

import { Link, Outlet } from 'umi';
import { history } from 'umi';
import styles from './index.less';
function login(){history.push('/login');
}
export default function Layout() {return (<div className={styles.navs}><ul><li><Link to="/">Home</Link></li><li><Link to="/docs">Docs</Link></li><li><button onClick={login}>登录</button></li><li><a href="https://github.com/umijs/umi">Github</a></li></ul><Outlet /></div>);
}

接下来我们就可以愉快的玩耍Umi里的组件了

Umijs组件的初次应用相关推荐

  1. react 组件连动效果_记一个缓动水柱React动画组件的初次尝试

    写完意识到这是第一篇,算是前言吧... 以后在zhihu写点东西...就当是博客好了,个人观点和体会而已,不求高大上,但求回头看的时候能够让以后的自己瞧不起. 背景:写React也一年多了,从一开始的 ...

  2. 龙芯1b(LS1B200)使用LVGL7.0.1组件的初次体验

    由比赛入坑龙芯1b(LS1B200),需要对板上驱动进行开发,使用LVGL库来做UI界面控制驱动. 网上资料难以查找,在本文中记录学习. 实现效果: 使用LVGL库的基本步骤: 1.硬件和需求设置LV ...

  3. [react] React组件的构造函数有什么作用?

    [react] React组件的构造函数有什么作用? 在react的新的写法中,每一个组件都是一个类,这个很符合es6的语法规范,在es6中要想创建一个对象,就要调用相应的构造函数, react的组件 ...

  4. 为什么react选择了函数式组件(剖析原理)

    不好意思,这是知乎上我写的文章,就不再csdn发布了.如果需要阅读,请点击: 为什么react选择了函数式组件(剖析原理) 最近,发现知乎的连接出问题了,所以,暂时把内容放在此处.如果知乎上好了的话, ...

  5. Vue_VueRouter

    简介 Vue和vue-router 创建 SPA 应用. vue-router 作用. 通过路由规则,渲染各自的组件. Vue开发,整个应用已经被拆分成了独立的组件.在使用vue-router时,把路 ...

  6. vue全套笔记,前端工程化+vue指令+脚手架

    文章目录 一. 前端工程化 webpack 的基本使用 webpack 中的插件 webpack 中的 loader 打包发布 Source Map的使用 注意,实际开发不需要自己配置webpack ...

  7. vue实战-实现换主题/皮肤功能

    现在的app和pc网站做的越来越花哨,但是有时候用户并不喜欢你给他挑选好的主题颜色,这个时候就需要一个换皮肤的功能了. 那么我们怎么在vue中实现这个换皮肤的功能呢? 实现思路 我们用vue一般都是写 ...

  8. 【Vue2.0】黑马课程笔记(一)基本指令和过滤器

    目录 1 了解 1.1 为什么要学习流行框架? 1.2 框架和库的区别 1.3 Node(后端)中的 MVC 与 前端中的 MVVM 之间的区别 1.4 Vue 扩展插件 2 Vue简介 2.1 vu ...

  9. vue2[黑马程序员]

    一.前端工程化与webpack 1.前端工程化 1. 小白眼中的前端开发 vs 实际的前端开发 2. 什么是前端工程化 3. 前端工程化的解决方案 2.webpack的基本使用 1. 什么是 webp ...

  10. 【vue基础】黑马vue视频笔记(二)

    文章目录 一.过滤器(vue2) (1)Filters过滤器概念 (2)定义过滤器 (3)私有过滤器和全局过滤器 (4)其他 (5)过滤器的注意点 二.watch 侦听器 (1)什么是侦听器 (2)侦 ...

最新文章

  1. sql isnull怎么没用_SQL语言在数据工程(Data Engineering)中的运用(一)
  2. 网络运维工程师心法:6 大技能让你告别背锅
  3. 浏览器json格式化插件 yformater
  4. SAP Spartacus module 层级结构设计的一种实践
  5. 玩转oracle 11g(3):配置监听
  6. java的servlet是干嘛的_Servlet能够做什么?
  7. 17 合作伙伴角色‘OA’不允许用于科目组xxxx的供应商
  8. 终于知道以后该咋办了!
  9. python创建虚拟环境报错typeerror_python 创建虚拟环境时报错OSError, setuptools下载失败...
  10. html中treegrid不显示根节点,treegrid如何让子节点默认不展开
  11. poj2828 Buy Tickets
  12. 离散数学11:图的着色
  13. 仿生眼部植入物使英国盲人患者能够检测视觉信号
  14. Guava限流器RateLimiter
  15. OpenWrt操作系统移植SIM7600CE驱动及调试
  16. webpack (七) -配置sourceMap——为了更容易地追踪代码错误和警告
  17. 在职研究生(多重继承)Python
  18. 网页设计作业——小米商城官网首页(1页) HTML+CSS+JavaScript web期末作业设计网页_清新淡雅个人网页大学生网页设计作业成品
  19. 宇视摄像机巡航和自动跟踪哪个优先级高?
  20. 使用oracle函数 LISTAGG 函数报错。ORA-00923: 未找到要求的 FROM 关键字

热门文章

  1. Ubuntu搭建FTP服务器
  2. Windows平台安装flutter之初体验(安装教程)
  3. HTML 标签参考手册:按字母顺序排列 HTML 标签
  4. 如何制作一个计算机病毒,怎样制作一个简单的电脑病毒
  5. ESAPI(一)索引的操作以及数据插入
  6. oracle建表代码,oracle建表脚本当中使用默认值 (转)
  7. Flutter绘制虚线
  8. 配电室智能监控系统设计及实现分析-Susie 周
  9. 文字转语音开源软件-espeak
  10. ts无损剪辑合并_视频如何合并?视频合并太难?其实很简单