明天正式在线办公没时间学习了,今天晚上再更新一篇,

代码提交一次:https://github.com/zhaogaojian/jgdemo

1、src下创建services目录

创建文件userSrv.ts

export async function query(): Promise<any> {
return request('user/getuserinfo');
} import axios from "axios"
export default async function request (options) {
let response
try {
response = await axios(options)
return response
} catch (err) {
return response
}
}

注意如果未安装axios,请安装axios

yarn add axios

3、User.tsx增加一个按钮

<Button type="primary" style={{marginTop:10,width:300}} onClick={this.handleReadFromSrvClick}>从服务端读取</Button>

this.props.UserInfo标红线可以改成

(this.props as any).UserInfo

4、事件,不需要传参数的话,payload可以不填内容

 handleReadFromSrvClick = e => {
this.props.dispatch({
type:"User/getUserInfo",
payload:null
})
console.log('click: ', e);
};

5、models目录下的 user.ts中增加如下代码

import {  query as queryUser } from '@/services/userSrv';

注意:下面effects不需要再使用queryUser.query

 effects:
{
*getUserInfo(_, { call, put }) {
const response = yield call(queryUser);
//yield console.log(response.data);
yield put({
type: 'User/updateUserState',
payload: response.data,
});
} }

注意:这里type直接改成"updateUserState"即可,不需要加User.

6、mock 增加user.ts

export default {
'/user/getuserinfo': {UserInfo:{
username:"李四"
}}
};

7、运行效果

点击从服务端读取,姓名变成了李四,达到预期效果

8、不分层与后台数据交互方法请参考

https://www.cnblogs.com/zhaogaojian/p/12238299.html

公司产品已经上了企业微信疫情专区,为疫情防控尽一份薄力。

AntDesign(React)学习-10 Dva 与后台数据交互的更多相关文章

  1. AntDesign(React)学习-4 登录页面提交数据简单实现

    github代码:https://github.com/zhaogaojian/jgdemo 全国肺炎,过节期间没地方去在家学习antd. 一.感觉antd pro项目太庞大了,可以学习下结构和代码风 ...

  2. AntDesign(React)学习-9 Dva model reducer实践

    今天肺炎增长数字依然吓人,感觉穿越到丧失片里了. 本节开始学习dva model使用,官网的讲解太文档化,对新手实践不太友好,自己简化了一个最简单的演示代码. 1.在src,models文件夹下创建u ...

  3. AntDesign(React)学习-1 创建环境

    目录: AntDesign(React)学习-15 组件定义.connect.interface AntDesign(React)学习-14 使用UMI提供的antd模板 AntDesign(Reac ...

  4. AntDesign(React)学习-2 第一个页面

    1.前面创建了第一个项目jgdemo,结构如下,使用TypeScript. 2.yarn start启动项目 3.点击GettingStarted是umi的官方网站 https://umijs.org ...

  5. MUI框架-09-MUI 与后台数据交互

    MUI框架-09-MUI 与后台数据交互 本篇介绍使用 art-template 和原生 MUI 的数据交互 mui.ajax 来实现 我们大家都知道,想要数据交互就要有数据,每次当我们发送请求,我们 ...

  6. --@angularJS--自定义服务与后台数据交互小实例

    1.myService.html: <!DOCTYPE HTML><html ng-app="app"><head>    <title& ...

  7. --@angularJS--$http服务与后台数据交互

    1.httpBasic.html: <!DOCTYPE HTML><html ng-app="app"><head>    <title& ...

  8. vue-cli模拟后台数据交互

    作为一个前端入坑的妹子,在学习vue的道路上挣扎徘徊,由一开始的对vue一直蒙圈只知道双向数据绑定和一些'V-x'的指令,慢慢通过一个视频的学习渐渐入坑,对于我这个js基础不怎么好而且编程思维又不是很 ...

  9. web前端与后台数据交互

    1.前端请求数据URL由谁来写? 在开发中,URL主要是由后台来写的,写好了给前端开发者.如果后台在查询数据,需要借助查询条件才能查询到前端需要的数据时,这时后台会要求前端提供相关的查询参数,这里的查 ...

随机推荐

  1. 小程序封装request请求

    //request.js var host = 'https://www.xxx.com';//请求域名 module.exports = function (type, params, method ...

  2. 基于tensorflow2.0和cifar100的VGG13网络训练

    VGG是2014年ILSVRC图像分类竞赛的第二名,相比当年的冠军GoogleNet在可扩展性方面更胜一筹,此外,它也是从图像中提取特征的CNN首选算法,VGG的各种网络模型结构如下: 今天代码的原型 ...

  3. M5310-A 版本

         模块外表            型号                           BAND                          M5310-A MBRH0S04 +NB ...

  4. Asp.ner Core-Blazor随手记

    后续继续补充内容.... 1.安装.Net Core3.0 SDK及以上版本都有待Blazor 2.如果想在.razor页面直接使用C#代码,相当于html里面嵌入了C#代码,可以在命令行里面输入下面 ...

  5. .net core 3.0+unit of work (一)

    1.先将unit of work源码下载 2.引入自己的项目 3.根据原始项目示意在自己项目的startup里注册仓储 由于我不想对每个实体都注册一遍,我使用了泛型仓储(core 2.0好像不支持) ...

  6. 剑指offer-面试题42-连续子数组的最大和-动态规划

    /*题目; 输入一个整形数组(可能有正数和负数),求数组中连续子数组(最少有一个元素)的最大和. 要求时间复杂度为O(n). 先输入数组的格式,再依次输入数组的值.*//*思路: f(i) = pDa ...

  7. 星星评分-依赖jquery

    https://pan.baidu.com/s/1UWJFh-QJOjSB_yqA8VgHIQ

  8. private、public、this关键字

    private关键字 概念:私有的,一种权限修饰符,用来修饰类的成员 特点:被修饰的成员只能在本类中访问 用法: - 1. private 数据类型 变量名: - 2. private 返回值类型 方 ...

  9. Cmake编译库注意

    在生成工程文件后要在Debug x64模式下菜单栏选择:生成->生成解决方案,等10几分钟然后在Cmake Targets下INSTALL,点击“仅用于项目->仅生成INSTALL”,然后 ...

  10. 在C#中使用RESTful API的几种好方法

    什么是Restful API REST 即Representational State Transfer的缩写.直接翻译的意思是"表现层状态转化". 它是一种互联网应用程序的API ...