后台web端的react
在api.js里,存放着各种功能引用的方法,比如这个fakeRegister,里面传参数params,返回要要调回的地址,${HOST1}/user/register
requset会返回codemessage,如果是401或402,则是我这边的错误,可能用户名密码不正确,可能路由的路径有问题。
export async function fakeRegister(params) {
return request(`${HOST1}/user/register`,{
/* return request('/api/register', { */
method: 'POST',
body: params,
});
}
有两个register,models里面的是方法,user里面的是页面。
user里面的register,就是react组件三步走,引入依赖,创建虚拟dom并利用render渲染,最后暴露出组件。这里面定义了userName的文本框。
models里面的register,是提交的数据值,进行验证。submit提交了两个参数,
之前关于这个username我这边读取到的总是undefined,是因为我这边忘了驼峰命名法,应该是userName! 而这个userName的定义就是在user里面定义的,因为写的是js,要用驼峰法,所以,payload.userName一定要写对才行。
*submit({ payload }, { call, put }) {
var params = {"password": "qyh",
"username": "qyh"}
payload.password='qyh';
payload.userName='qyh';
const response = yield call(fakeRegister, payload);
yield put({
type: 'registerHandle',
payload: response,
});
},
},
上面这个写法,吧params都给写死了。
下面这个写法,让params等于payload里传过来的值。下面这个写法才是对的。上面这个写法根本无意义啊。
*submit({ payload }, { call, put }) {
let params={
"username":payload.userName,
"password":payload.password
}
const response = yield call(fakeRegister, params);
yield put({
type: 'registerHandle',
payload: response,
});
},
},
*login({ payload }, { call, put }) {
var params = {"login_type": "usernameAndPassword",
"credentials": {
"username": payload.userName,
"password": payload.password
}}
payload.login_type = 'usernameAndPassword';
payload.credentials = {
"username": payload.userName,
"password": payload.password
};
如果返回的code是500,就是后台的问题,不是我的问题,正常返回得是200.
徐瀚师傅自己写了一个方法,叫port,用来传url前面的值。port为true的话,就是前面的url,否则就是后面的。
方法:
// 分开两个端口 参数为true的话则为9099端口
export function port(isLogin) {
let host;
if (!isProduction()) {
isLogin ? host = 'http://192.168.1.103:9099' : 'http://192.168.1.103:8099';
}
return host;
}
// true为生产环境 false为开发环境
export function isProduction() {
return process.env.NODE_ENV === 'production';
}
使用:
import { port } from '../utils/utils';
export async function fakeAccountLogin(params) {
return request(port(true)+'/login', {
method: 'POST',
body: params,
});
}
export async function fakeRegister(params) {
return request(port(true)+'/user/register',{
method: 'POST',
body: params,
});
}
后台web端的react的更多相关文章
- 移动web端的react.js组件化方案
背景: 随着互联网世界的兴起,web前端开发的方式越来越多,出现了很多种场景开发的前端架构体系,也对前端的要求日益增高,早已经不是靠一个JQuery.js来做前端页面的时代了,而今移动端变化最大,近 ...
- 基于吉日嘎底层架构的通用权限管理Web端UI更新:参考DTcms后台界面
经一周的研究学习,看了国内的H+.HUI等,国外的PaperDashboardPro.Make.Metronic BootStrap等,最终选定用一个轻量的,适合中国人的,来自DTcms的后台管理UI ...
- IOS 多文件上传 Java web端(后台) 使用List<MultipartFile> 接收出现的问题
先上正确的示例: 主要是设置我们的request的content-type为multipart/form-data NSDictionary *param = @{@"assignee&qu ...
- 1、移动端 2、后台 3、 移动端,Web 端 4、 PC端
移动端: 1.公众号:停开心 住总物业 2.app: iso Android 停开心,住总停开心 后台:停开心智慧停车管理平台(所有的停车场) 移动端,Web端: 海投OA,公司OA PC端:收费软 ...
- 技术实践丨React Native 项目 Web 端同构
摘要:尽管 React Native 已经进入开源的第 6 个年头,距离发布 1.0 版本依旧是遥遥无期."Learn once, write anywhere",完全不影响 Re ...
- WEB通知和React Native之即时通讯(iOS Android)
WEB通知和React Native之即时通讯(iOS Android) 一,需求分析 1.1,允许服务器主动发送信息给客户端,客户端能监听到并且能接收. 1.2,为了方便同一个系统内的用户可以指定某 ...
- 值得收藏的8个Web端组件库
值得收藏的8个Web端组件库 Ant Design 介绍:一个服务于企业级产品的设计体系,基于『确定』和『自然』的设计价值观和模块化的解决方案,让设计者专注于更好的用户体验. 组件库地址:https: ...
- web端限时活动逻辑处理总结
由于要在web端做一个限时活动的功能,功能大致为:一个小时内可以报名参加活动,然后给予报名者奖品,先到先得.用到一些处理逻辑做下总结,以前没有做过类似的东西,都是自己先体验其他网站的报名方式,然后再摸 ...
- Web端测试和移动端测试的区别
1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来重点标记. 对于移动端设备可以用手机自带的截图工具来截图然后传到电脑上,个人一般 ...
随机推荐
- Luogu4983 忘情
Luogu4983 忘情 定义序列 \(x_1,\ x_2,\ \cdots,\ x_n\) 的值为 \(\frac{((\displaystyle\sum_{k=1}^nx_k\times \bar ...
- Feature Extractor[VGG]
0. 背景 Karen Simonyan等人在2014年参加Imagenet挑战赛的时候提出的深度卷积神经网络.作者通过对2013年的ILSVRC中最好的深度神经网络模型(他们最初的对应模型都是ale ...
- LeetCode11:Container With Most Water
public int MaxArea(int[] height) { ; ; ; while(start<end) { max=Math.Max(max,Math.Min(height[star ...
- 1、话说linux内核
1.内核和发行版的区别 到底什么是操作系统 linux.windows.android.ucos就是操作系统 操作系统本质上是一个程序,由很多个源文件构成,需要编译连接成操作系统程序(vmlinz.z ...
- 【原创】研发应该懂的binlog知识(下)
引言 这篇是<研发应该懂的binlog知识(上)>的下半部分.在本文,我会阐述一下binlog的结构,以及如何使用java来解析binlog. 不过,话说回来,其实严格意义上来说,研发应该 ...
- Python爬取豆瓣指定书籍的短评
Python爬取豆瓣指定书籍的短评 #!/usr/bin/python # coding=utf-8 import re import sys import time import random im ...
- 朱晔和你聊Spring系列S1E1:聊聊Spring家族的几大件
朱晔和你聊Spring系列S1E1:聊聊Spring家族的几大件 [下载本文PDF进行阅读] Spring家族很庞大,从最早先出现的服务于企业级程序开发的Core.安全方面的Security.到后来的 ...
- 使用 $(function(){}) 时遇到的一个小bug及解决方法
在 $(function(){}) 中声明函数,在 $(function(){}) 外调函数,会报错 原因: 页面加载后,会先执行 $(function(){}) 外面的语句,再执行 $(functi ...
- 【转】ubuntu 双机热备
1.关于软件安装 sudo apt-get install libssl-dev sudo apt-get install openssl sudo apt-get install libpopt-d ...
- 牛客练习赛B题 筱玛的排列(找递推规律)
链接:https://ac.nowcoder.com/acm/contest/342/B来源:牛客网 筱玛的排列 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 524288K,其他语 ...