后台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的图片,对于错误的地方可以用工具自带的标识来重点标记. 对于移动端设备可以用手机自带的截图工具来截图然后传到电脑上,个人一般 ...
随机推荐
- OmniPlan 3 Pro密钥
密钥用户名都是youliyuan.OmniPlan 3:HOMJ-QOJH-OIBN-TNIH-HWUN-TEEH-WUNNKWO-HVKB-JAZE-UIHH-XAVY-BEEX-AVYBCRW-M ...
- Java多线程(五)——线程等待与唤醒
一.wait().notify().notifyAll()等方法介绍 在Object.java中,定义了wait(), notify()和notifyAll()等接口.wait()的作用是让当前线程进 ...
- 移动端h5页面编写样式重置
@charset "UTF-8"; /* stylelint-enable */ /* 重置样式 */ * { -webkit-tap-highlight-color: trans ...
- MySQL 5.7中如何定位DDL被阻塞的问题
在上篇文章<MySQL表结构变更,不可不知的Metadata Lock>中,我们介绍了MDL引入的背景,及基本概念,从“道”的层面知道了什么是MDL.下面就从“术”的层面看看如何定位MDL ...
- Raspberry Zero 上实现平滑视频图传
在某些应用场合我们可能需要通过一个设备通过WIFI将图像传到其它的机器进行显示或者图形分析,那怎么可以低成本地实现呢?其实很简单,我们只需要一块 Raspberry Zero W 和一个RPI 摄像头 ...
- Java基础之数据比较Integer、Short、int、short
基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 今天聊一聊Java的数据比较,这个范围比较大,基础类型的比较.引用类型的比较. 前提: 1.Java和c#都提供自动装箱和自动拆箱操作,何为自 ...
- python代码风格指南:pep8 中文版
本文档所提供的编码规范,适用于主要的Python发行版中组成标准库的Python代码.请参阅PEP关于Python的C实现的C编码风格指南的描述. 本文档和PEP257(文档字符串规范)改编自Guid ...
- Nginx监控运维
Nginx是一个开源.免费.高性能的HTTP和反向代理服务器,也可以用于IMAP/POP3代理服务器.充分利用Nginx的特性,可以有效解决流量高并发请求.cc攻击等问题. 本文探讨了电商场景下Ngi ...
- 软件工程(FZU2015) 学生博客列表(最终版)
FZU:福州大学软件工程 张老师的博客:http://www.cnblogs.com/easteast/ 经过前两周选课,最后正式选上课程的所有学生博客如下: 序号 学号后3位 博客 1 629 li ...
- iOStextField/textView在输入时限制emoji表情的输入
https://www.jianshu.com/p/5227e6aab4d4 2017.02.27 13:08* 字数 146 阅读 6109评论 6喜欢 14 又遇到输入框输入表情的情况了,之前写了 ...