React+DvaJS 之 hook 路由权限控制
- 博客
- 学院
- 下载
- GitChat
- TinyMind
- 论坛
- APP
- 问答
- 商城
- VIP
- 活动
- 招聘
- ITeye
- 写博客
- 发Chat
- 登录注册
React+DvaJS 之 hook 路由权限控制
在model的subscriptions中进行匹配,分发到effects中进行判断和跳转,更多资料参考这里
effects 有三个参数:
Effects
put
用于触发 action 。
yield put({ type: 'todos/add', payload: 'Learn Dva' });
call
用于调用异步逻辑,支持 promise 。
const result = yield call(fetch, '/todos');
select
用于从 state 里获取数据。
const todos = yield select(state => state.todos);
基于 action 进行页面跳转
import { routerRedux } from 'dva/router';// Inside Effects
yield put(routerRedux.push('/logout')); // Outside Effects dispatch(routerRedux.push('/logout')); // With query routerRedux.push({ pathname: '/logout', query: { page: 2, }, });
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
除 push(location) 外还有更多方法,详见这里
示例如下:
state: {isLogin: false,loginfail:false,},subscriptions: {setup({ dispatch, history }) {history.listen(location => {if (location.pathname.includes('app')) { dispatch({ type: 'loginhook', }); } }); }, }, effects: { * login({ payload },{call, put}) { const { data } = yield call(login, payload); if (data && data.success) { yield put({ type: 'checklogin', payload:{ isLogin:true, } }); yield put(routerRedux.push('/app/users')); }else{ yield put({ type: 'loginfail', payload:{ loginfail:true, } }); } }, * loginhook({ payload },{select,call, put}){ const isLogin = yield select(({session}) => session.isLogin); console.log('logincheck',isLogin); if(isLogin === false){ yield put((routerRedux.push('/login'))); } }, }, reducers: { checklogin(state,action) { return {...state,isLogin:action.payload.isLogin }; }, loginfail(state,action) { return {...state, loginfail:action.payload.loginfail}; }, }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
不会这些技术,大数据开发薪资不会高?
大数据技术与运用的成熟,应用集中于互联网、金融、医疗、新能源、通信和房地产等行业。整理平均薪资情况和大数据学习大纲供查看
-
LeoDu20182018-05-03 15:23:31#2楼您好楼主,我现在使用DVA遇到,判断是否登录未登录跳到登录页面的问题,可以把你上面的登录判断的代码分享给我一下吗?
-
yongf20142018-03-18 23:09:05#1楼感谢博主~终于找到了。
dva路由监听
344
在dva中我们可以在Modal中实现事件监听,通过在modal中添加一个 subscriptions,并且在里面创建一个setup函数{ namespace: 'infoArea', ...
React-Router传参取值页面跳转
2万
项目结构 image.png -RouterMap页面,所有的页面都必须注册路由 import React from 'react' import { Router...
Redux-Router - CSDN博客
7-25
import { browserHistory } from 'react-router'; browserHistory.push('/some...react-router-redux 将react-router 和 redux 集成到一起,用redux的方式去操作...
dva路由跳转找不到组件 - CSDN博客
5-21
然后经过一番折腾最后用了一个叫做routerRedux的工具,这个是dva基于redux封装好了...(routerRedux.push({ pathname: `/adminCompanyAccount/detail/${record.id}`,...
初探 React Router 4.0
5.8万
React Router 4.0 (以下简称 RR4) 已经正式发布,它遵循React的设计理念,即万物皆组件。所以 RR4 只是一堆 提供了导航功能的组件(还有若干对象和方法),具有声明式(引入即用...
怎么让route拥有redux的方法 - CSDN博客
7-31
需求如何利用route的onEnter钩子来出发redux的dispatch方法 I just wrapped my routes in a function that returns them. This allows you to pass the redux ...
React Router的一个完整示例 - CSDN博客
7-24
react-router-redux 简单例子 u013224660 12-28 2070 reducer与按需加载组件...vue-router 2.0 常用基础知识点之router.push() 阅读量:84596 使用Vue-Router...
react登录跳转2种方式
452
第一种方式,在页面中跳转:切记引入 import { routerRedux } from 'dva/router';// 登录 handleSubmit = (err, values) =&...
antd mobile(六)react-router 左进右出切换界面
1442
第五节我们配置了页面路由切换,但发现个问题,所有界面都是向左切换的,感觉还是不对啊,仔细分析下原生app,会发现应该是进入是左切换,返回时应该是右切换出。第一步:修改路由动画配置信息: 修改前的代...
React Router中pushState的使用方法 - CSDN博客
6-5
this.props.history.pushState({passParam: true}, "/targetURL"); ...redux router 组件如何... fay462298322:跟redux毫无关系 angular2.0如何使用管...
学习react,redux,router,antd的一些感悟(见解) - CSDN博客
7-26
文章标签: 开发工具 调试react redux antd 个人分类: 编程日记 react 前端开发...antd导航菜单用的是官网的Layout示例:点击打开链接和react-router-dom结合,实现点击...
Redux-Router
1006
1. 基本用法React Router 安装命令如下$ npm install -S react-router 使用时,路由器Router就是React的一个组件。import { Router ...
react项目开发-路由优化(前三篇续) - CSDN博客
8-6
目前的项目架构,大家都能看到,有路由跳转的地方都是写死的url,如<Link to={'/aaa'}>,push({pathname:'/login'}),这种方式呢,没有问题,...
深入redux技术栈 - CSDN博客
6-7
简单的说, react-router-redux 让我们可以把路由也当作状态的一部分,并且可以使用redux的方式改变路由:直接调用dispatch: this.props.push(“/detail/”);...
DVA知识集合
9944
react与dva 原文地址:https://github.com/dvajs/dva-knowledgemap 1.变量声明const DELAY = 1000let count = 0 cou...
react前端框架dva(三)
2925
API输出文件dva默认输出文件。dva/router默认输出 react-router 接口, react-router-redux 的接口通过属性 routerRedux 输出。比如:import...
react-router-redux 5.0 helloworld - CSDN博客
6-18
{ConnectedRouter, routerReducer, routerMiddleware, push} from 'react-router-redux' import createSagaMiddleware, {takeEvery} from 'redux-saga' import...
dva源码解析(一)
3932
写在前面dva是蚂蚁金服推出的一个单页应用框架,对redux,react-router,redux-saga进行了上层封装,没有引入新的概念,但是极大的程度上提升了开发效率;下面内容为本人理解,如有错...
深入redux技术栈
342
http://www.tuicool.com/articles/Afaeiue这一篇是接上一篇“react进阶漫谈”的第二篇,这一篇主要分析redux的思想和应用,同样参考了网络上的大量资料,但代码同...
react-router-redux 5.0 helloworld
1833
最新版本 react-router-redux 5.0 路由DEMO使用了 redux-react,react-saga,react-router,react-router-redux 实现了路...
React Router的一个完整示例
642
本博文提供一个单网页结构网页(SPA)使用React Router路由控制跳转的完整例子。http://blog.csdn.net/future_todo/article/details/530366...
React Router中pushState的使用方法
1883
带参数页面跳转 [javascript] view plain copy this.props.history.pushState({pass...
学习react,redux,router,antd的一些感悟(见解)
6347
学习react的一些感悟ps:本文列出的教程都是中文版 如果你英语不错 建议看英文原版教程!!学习react有段时间了 总结了一下经验学习前 你必须先掌握的知识开发环境建议linux或者mac osx...
react-navigation及dva使用(三)
3061
关于react-navigation,由于是社区维护的路由库,所以更新和问题会比较多,版本更新也比较快,我用的2个版本比较多,一个是beta7版本,现在master是beta11(截止到7月4日为止)...
ReactJS & dva 项目常见报错问题与解决方法 (react-router 4)
2700
1. 项目中用 dva-cli 生成路由: 命令行:$ dva g route users 报错信息: AssertionError [ERR_ASSERTION]: ...
react dva 碎片02
818
dva 是基于现有应用架构 (redux + react-router + redux-saga 等)的一层轻量封装,没有引入任何新概念,全部代码不到 100 行。( Inspired by elm ...
基于React,dva脚手架的知乎日报
1.3万
MyZhihuApp1,初始化npm install dva npm install dva-cli -g mkdir MyZhiHuAppDva dva -init npm start浏览器打开lo...
如何用 Vue 实现前端权限控制(路由权限 + 视图权限 + 请求权限)
460
随着前后端分离架构的流行,权限控制这个曾经陌生的话题开始进入很多前端同学的视野,作为一名前端,可能部分同学会认为权限是后端的事,其实这个想法是片面的,后端是权限控制的最后一扇门,而在这之前,做好前端权...
CodeIgniter通过hook的方式实现简单的权限控制
864
根据自己的实际情况,需要两个文件,一个是权限控制类,Acl,另外一个是权限配置的文件acl.php放在了config这个目录下。 Acl这个类放在了application/hook/acl.ph...
个人资料
浪漫不属意
- 原创
- 30
- 粉丝
- 12
- 喜欢
- 9
- 评论
- 10
- 等级:
- 访问:
- 5万+
- 积分:
- 707
- 排名:
- 7万+
最新文章
- macos high Sierra Brew 问题
- NodeList 与 HTMLCollection 以及dom排序
- 宝宝,我要秀恩爱
- 闭包与柯里化的小题目
- 你可能不知道的js事件处理
个人分类
- draftjs7篇
- react3篇
- javascript12篇
- dom2篇
- python2篇
- nodejs1篇
- js轮子3篇
展开
归档
- 2018年1月1篇
- 2017年9月1篇
- 2017年5月1篇
- 2017年4月4篇
- 2017年3月12篇
- 2016年12月8篇
- 2015年4月2篇
- 2015年3月1篇
展开
热门文章
- React+DvaJS 之 hook 路由权限控制
阅读量:19393
- 1.Draftjs 学习笔记
阅读量:4343
- 5.Draftjs 学习笔记-自定义控件(多媒体)
阅读量:3224
- phpqrcode 生成图片显示问题
阅读量:2831
- 3.Draftjs 学习笔记-Entities
阅读量:2538
最新评论
- React+DvaJS 之 hoo...
LeoDu2018:您好楼主,我现在使用DVA遇到,判断是否登录未登录跳到登录页面的问题,可以把你上面的登录判断的代码...
- React+DvaJS 之 hoo...
yongf2014:感谢博主~终于找到了。
- 宝宝,我要秀恩爱
u013046627:会玩
- 宝宝,我要秀恩爱
zwqZWQ2012:666
- zend guard loader...
ohmyauthentic:[reply]a1006570862[/reply]我也不是经常逛,最近想刷刷存在感,发了点博客
联系我们
请扫描二维码联系客服
webmaster@csdn.net
400-660-0108
QQ客服 客服论坛
关于招聘广告服务 网站地图
©2018 CSDN版权所有 京ICP证09002463号
百度提供搜索支持
经营性网站备案信息
网络110报警服务
中国互联网举报中心
北京互联网违法和不良信息举报中心
- 「码字计划」:拿万元写作基金!
- 老程序员教你学python
3
- 写评论
- 目录
- 收藏
- 微信
- 微博
转载于:https://www.cnblogs.com/leigepython/p/9476823.html
React+DvaJS 之 hook 路由权限控制相关推荐
- vue根据不同权限显示图片_vue如何实现路由权限控制
前言在实际的开发过程中,我们通常会涉及到权限的问题,不同的用户进来只能看到他对应的菜单权限,页面上的菜单渲染是比较好实现的,这里就不多提,唯一比较难的就是路由的权限控制. 解决思路目前大概有两种思路可 ...
- vue实现路由权限控制
我们后管理项目中经常需要对路由权限进行判定,不同的身份可以访问不同的路由. 实现的大体思路很简单,将路由分为基本路由和用户路由,基本路由所有用户均可访问,用户路由是当前用户能够访问的独有的路由. 我们 ...
- 7nfs客户端没权限_Ant design pro v4-服务器菜单和路由权限控制
要解决的问题:ant design pro默认情况下,菜单和路由都用配置的方式,在前端的config/config.ts中配置.但是大多数后台系统都需要由后端服务器控制权限. 类似的需求一般包括两点: ...
- asp.net后台管理系统-登陆模块-路由权限控制_1
using System.Web.Routing;//重写System.Web.Routing中Initialize方法protected override void Initialize(Reque ...
- Ant design pro v4-服务器菜单和路由权限控制
要解决的问题:ant design pro默认情况下,菜单和路由都用配置的方式,在前端的config/config.ts中配置.但是大多数后台系统都需要由后端服务器控制权限. 类似的需求一般包括两点: ...
- react-router-middleware-plus开源啦 | 基于react-router v6的零成本式路由权限解决方案
一.你的苦恼~~ 你还在为react-router的路由权限控制而烦恼吗? 你还在翻遍了社区react路由权限相关文章发现都是V4.V5版本的而烦恼吗? 你还在为自行适配react-router v6 ...
- element label动态赋值_浅析 vuerouter 源码和动态路由权限分配
背景 上月立过一个 flag,看完 vue-router 的源码,可到后面逐渐发现 vue-router 的源码并不是像很多总结的文章那么容易理解,阅读过你就会发现里面的很多地方都会有多层的函数调用关 ...
- blob没权限 ie_vuerouter 源码和动态路由权限分配
本文首发于政采云前端团队博客:浅析 vue-router 源码和动态路由权限分配https://www.zoo.team/article/vue-router-analysis 背景 上月立过一个 f ...
- vue-router 源码和动态路由权限分配
本文首发于政采云前端团队博客:浅析 vue-router 源码和动态路由权限分配https://www.zoo.team/article/vue-router-analysis 背景 上月立过一个 f ...
最新文章
- Layer Normalization
- iOS中UITableViewCell的重用问题解决方案
- 信息安全之网络安全初体验(保密向)(一)
- 计算机职业短命,最短命10种活法你占几条?9成人长期对电脑
- html音频从10秒播放至30秒,基于Arduino制作SD卡音乐播放器
- 例子简单说说C# ref和out
- 蚂蚁金服隗华:十五年时间见证分布式数据库的崛起
- 子系统单点登录配置说明
- git lfs mac 安装_mac安装homebrew
- matlab切割肿瘤算法,ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性...
- 句句真研—每日长难句打卡Day16
- 使用python开发windows应用程序
- Jqweui框架写的CRM配套app
- 计算机硬件常识知识,计算机硬件基础知识大全
- Kali Linux 自定义GDM3登录背景图片和LOGO
- 常见荧光染料修饰多种基团及其激发和 发射波长数据一览数据
- 浅谈npm和yarn的区别
- DNS防污染和广告拦截好用工具: AdGuard Home
- SQL PLUS命令使用大全(转,特有用)
- Markov决策过程学习笔记和一些Markov代码实现的记录