dva的state引用及connect连接
一、取到我们自己定义的state
1.值得注意的是我们如果需要使用dva在新建umi项目的时候不能再选择simple app,那个新建项目不支持dva,需要选择Ant Design Pro这个选项来新建umi项目
2.检查src目录下是否有models文件夹,如果没有,在src目录下新建文件夹models,注意不要打错,在models中新建js文件,在这个里边暴露出state;
export default{state:{user:{id:1,name:'大侠',}}
};
3.我们定义完state之后,在umirc.ts中添加dva:{}这条代码加入dva的相关功能
dva:{},
4.我们在主页从umi中引入connect
import {connect} from 'umi';
5. 将dva中的数据给组件Homepage使用需要分为两个步骤走
第一步:第一次调用用connest函数,传入一个回调函数mapStateToProps
作用是将dva上的状态 通过props的方式绑定给组件
mapStateToprops接受dva中整个状态对象作为参数,返回值为object对象,该对象的所有
属性会作为props绑定给组件
第二步,紧接着继续调用connect第一次执行返回的函数,传入指定组件
最后,将connect连续两次调用的返回值作为对外的暴露组件
const mapStateToProps= state=>{console.log(state);return {};}export default connect(mapStateToProps)(HomePage);
这样我们就会在控制台输出了我们想要的state
二、取到state中的值
1.首先我们在这个mapStateToProps的return返回值中写入 参数:state.user.name就可以了
注意state.user.name是根据实际情况定义的属性写的,请根据自己的项目进行修改
return {name:state.user.name};
2.引用的时候我们需要通过props来取到这个状态,并且利用props.参数名字取到我们返回的值
const HomePage= (props) => {return (<div className={styles.container}><h1>主页</h1><h3>当前用户为:{props.name}</h3></div>);
};
dva的state引用及connect连接相关推荐
- 安信可 A9G 使用GPRS 连接时:STATE:IP PROCESSING CONNECT FAIL CLOSED
GPRS 连接:STATE:IP PROCESSING CONNECT FAIL CLOSED 我用的是的安信可的A9G模块,连接测试时候怎么都连接不上. 问题: 发送指令:AT+CIPSTART=& ...
- Qt 控制台 使用connect连接信号和槽
导言: Qt的信号号和槽 (Signal&Slots)是Qt的特性,深入理解该机制是能够精通Qt编程的关键. 信号号和槽 (Signal&Slots)的作用: 信号和槽用于两个对象之间 ...
- 中转网关 (Transit Gateway) Connect连接类型集成FortiGate安全服务
中转网关(Transit Gateway)Connect 功能介绍 SD-WAN或软件定义的广域网长期以来一直用于通过公共Internet连接数据中心和分支机构.在现在的网络设计中,这些网络还需要扩展 ...
- connect 连接超时
原文地址:http://blog.csdn.net/codeheng/article/details/44625495 在使用TCP的connect连接服务器时,在默认情况下系统使用的是阻塞式sock ...
- Unity【Multiplayer 多人在线】- Socket 通用客户端网络模块(一)、Connect 连接服务端
介绍 在阅读了罗培羽著作的Unity3D网络游戏实战一书后,博主综合自己的开发经验与考虑进行部分修改和调整,将通用的客户端网络模块和通用的服务端框架进行提取,形成专栏,介绍Socket网络编程,希望对 ...
- pymysql connect 连接mysql 报错keyerror255
文章目录 摘要 报错信息 解决方案 摘要 pymysql connect 连接mysql 报错keyerror255:最近困了我两个多月的一个难题,搜这个标题进来的都可以看到搜索引擎提供了n^2篇解决 ...
- 华为手机adb connect连接失败解决方案(转)
原作地址:https://www.jianshu.com/p/4758c8238165 注意:手机一定要打开开发者模式,然后打开USB调试 华为手机 华为手机 华为手机(其他手机没有测试过,拨号可能是 ...
- adb connect连接手机失败的解决办法
手机已经允许usb调试,使用cmd窗口,执行操作adb connect ip:5555失败, 提示unable to connect to xxxx 解决办法:执行adb tcpip 5555 提示r ...
- 萤石春季发布会:4+N产品体系再升级EZVIZ Connect连接智能生活
3月18日,以"智家新生,萤领未来"为主题的萤石智能家居2022春季发布会在线上召开.本次发布会除了带来全无线电池摄像机.智能门铃.视频锁.玲珑面板.Wi-Fi6全屋覆盖方案等突破 ...
最新文章
- SAP S4HANA系统里的客供件管理
- Kubernetes的初始化容器initContainers
- 【今晚七点半】:爱奇艺DRM探索之路
- python绘画_python学画画(上)
- scanf()函数错误把输入缓存里的回车作为一次字符输入
- Python 问题 unindent does not match any outer indentation level 在 pycharm 平台的解决方法
- fcn从头开始_从头开始有营销问题
- UVA - 820 Internet Bandwidth(最大流模板题)
- oracle命中率sql,Oracle 检查命中率的SQL
- 随便创建Servlet文件都出现,请求资源不可用的情况
- Android应用中使用及实现系统“分享”接口
- 最新发布!《统计学习方法》第二版无监督学习视频课上线了!
- 若有下列共用体定义_练习题-第十章 结构体与共用体(有答案)
- STEP 7-Micro/WIN SMART 界面介绍
- win11连接共享打印机错误0x00000709
- 这篇文章里的代码的C#版本 (穿过已知点画平滑曲线(3次贝塞尔曲线)
- 十进制转十二进制-复试练习
- 国内云服务商如何排名?国内云主机服务器哪家好?
- 2020年python考试时间_想准备2021年三月份的Python考试,应该怎么准备呢?
- Javascript 产生随机数——服从均匀分布随机数、服从正态分布(高斯分布)随机数、服从柯西分布随机数