关于项目中用到的技术栈的总结

在使用dva打包的时候本地开发由于没有对后端接口进行代理,导致返回回来的content-type值为html/text,然后ajax请求后端出现 Sorry, we need js to run correctly! ? 参考 解决方案

 

1:ReRes使用

chrome代理的一款工具

If URL match: 要代理环境的资源地址

Response:  本地打包之后的地址

2: redux-actions 

createAction 可以接受三个参数 

 @param type action的类型

 @param actionCreator 需要创建的action函数

 @param metaCreator action的属性

 @returns {Function}

暂时在项目中就用到了type这个参数具体代码如下

在action.js定义

export const ACIONT_CREATE = "ACIONT_CREATE"; //定义一个type变量

export actionCreate = createAction(ACTION_CREATE);

然后在actionCreator.js里面将跟后端交互的异步数据或者页面上的同步数据通过dispatch这个action

import { actionCreate } from "./action.js";

const getData = (param) => async (dispatch) => {

// request 封装的请求数据方法

const data = request({ api: "xxx' });

dispatch(actionCreate(data));

}

在reducer里面处理Action

redux-actions 里面有handleAction, handleActions来处理不同的action

普通的处理action方法要写太多的switch case语句,比较繁琐

handleActions采用了类似于对象的写法,他接收两个参数  初始的状态值跟包含着所有Action的值

import { ACIONT_CREATE } from './actions'; 

export default handleActions(

{

   [ACIONT_CREATE]: (state, action) => {

    return { ...state, ...action.payload };

  },

},

{ data: [] }

);

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值