1.替换mock数据:

1.将:.roadhogrc.mock.js 中的代理模式替换

当不使用代理的时候就会将所有 /api/的链接换成 http://localhost:8080/

export default noProxy ? {'GET /api/
':'http://localhost:8080/'} : delay(proxy, 1000);

2.启动:

如果你是win系统

npm run start:no-proxy

其他系统没试

更新 2.x

   proxy: {
'/task/job/': {
target: 'http://test.text:8090',
changeOrigin: true,
pathRewrite: { '^/task/': '' }, //这里是匹配进行替换 这样会直接请求接口http://test.text:8090/job/xxxxx
},
},

2.dva实践

1.model

比如model层里有goods.js文件【当然goods.js 必须在路由中设定 否则是无法访问到的】

路径: /common/router.js

 '/goods/list': {
component: dynamicWrapper(app, ['goods'], () => import('../routes/Goods/List')),
},

路径: /model/goods.js

//从service 层中获取得到  【etGoodslist,getCategoryAll,deleteGoods】
import { getGoodslist,getCategoryAll,deleteGoods} from '../services/api'; export default {
namespace: 'goods',
state: {
data: {
list: [],
pagination: {},
},
},
effects: {
//查询商品列表 //前端请求api
*list({ payload }, { call, put }) {
const response = yield call(getGoodslist, payload);
yield put({
type: 'goodslist',
payload: response,
});
},
//树形栏目
*category({payload},{call,put}){
const response = yield call(getCategoryAll, payload);
yield put({
type: 'goodsCategory',
payload: response,
});
},
//删除商品
*remove({payload},{call,put}){
const response = yield call(deleteGoods, payload);
yield put({
type: 'deletegoods',
payload: response,
});
}
}, reducers: {
//store层 返回给components
goodslist(state, action) {
return {
...state,
data: action.payload,
};
},
goodsCategory(state, action){
return {
...state,
treeData: action.payload,
};
},
deletegoods(state, action){
return {
...state,
data: action.payload,
};
}
},
};

service

路径 :/service/app.js

export async function getGoodslist(params) {
return request(`/api/goods/list?${stringify(params)}`);
}
export async function getCategoryAll(params) {
return request(`/api/category/all?${stringify(params)}`);
}
//删除商品
export async function deleteGoods(params){
return request(`/api/goods/delete?${stringify(params)}`);
}

components 更新数据

const treeData = this.props.goods.treeData;

实战 ant design pro 中的坑的更多相关文章

  1. Ant Design Pro中Transfer穿梭框的实际用法(与后端交互)

    Ant Design Pro中Transfer穿梭框的实际用法(与后端交互) 该控件的属性以及属性的作用在ADP的官方文档中都有介绍,但没有讲如何与后端交互,本文旨在讲解该控件与后端的交互. Ant ...

  2. 把antd的组件源码搬到Ant Design Pro中使用

    把组件源码搬过来后,样式死活不生效,经过1天的努力,有说less-loader的,有说webpack配置,还有说babel配置的,最后,我自己找到了方法 就是在global.less中使用@impor ...

  3. 【后台管理系统】—— Ant Design Pro 项目爬坑(一)

    1.表单rule中可以分对象处理不同规则 <FormItem label="类型名称" {...formLayout}> { form.getFieldDecorato ...

  4. ant design pro (十五)advanced 使用 API 文档工具

    一.概述 原文地址:https://pro.ant.design/docs/api-doc-cn 在日常开发中,往往是前后端分离的,这个时候约定好一套接口标准,前后端各自独立开发,就不会被对方的技术难 ...

  5. ant design pro (十一)advanced Mock 和联调

    一.概述 原文地址:https://pro.ant.design/docs/mock-api-cn Mock 数据是前端开发过程中必不可少的一环,是分离前后端开发的关键链路.通过预先跟服务器端约定好的 ...

  6. ant design pro (八)构建和发布

    一.概述 原文地址:https://pro.ant.design/docs/deploy-cn 二.详细 2.1.构建 当项目开发完毕,只需要运行一行命令就可以打包你的应用: npm run buil ...

  7. ant design pro (七)和服务端进行交互

    一.概述 原文地址:https://pro.ant.design/docs/server-cn Ant Design Pro 是一套基于 React 技术栈的单页面应用,我们提供的是前端代码和本地模拟 ...

  8. ant design pro(二)布局

    一.概述 参看地址:https://pro.ant.design/docs/layout-cn 其实在上述地址ant-design上已经有详细介绍,本文知识简述概要. 页面整体布局是一个产品最外层的框 ...

  9. Ant Design Pro快速入门

    在上一篇文章中,我们介绍了如何构建一个Ant Design Pro的环境. 同时讲解了如何启动服务并查看前端页面功能. 在本文中,我们将简单讲解如何在Ant Design Pro框架下实现自己的业务功 ...

随机推荐

  1. tensorflow和keras混用

    在tensorflow中可以调用keras,有时候让模型的建立更加简单.如下这种是官方写法: import tensorflow as tf from keras import backend as ...

  2. 常用模块Part(1)

    collections模块 time模块 random模块 os模块 sys模块 collections模块 这个模块实现了一些很好的数据结构,它们能帮助你解决各种实际问题 在这里主要介绍几种数据结构 ...

  3. vs2013打包安装程序

    安装扩展包Visual Studio Installer VS2013下默认是没有Visual Studio Installer的,需要安装对应的扩展包: 下载地址:VS2013安装向导扩展包下载 安 ...

  4. Handlebars的基本用法

    使用Handlebars,你可以轻松创建语义化模板,Mustache模板和Handlebars是兼容的,所以你可以将Mustache导入Handlebars以使用 Handlebars 强大的功能. ...

  5. linux后台运行python程序 nohup

    nohup python -u test.py > out.log 2>&1 & nohup sh **.sh > /dev/null 2>&1 &am ...

  6. SqlServer查找字段中带空值的项

    select * from  lianxia where sex is null

  7. C语言打印杨辉三角(2种方法)

    杨辉三角是我们从初中就知道的,现在,让我们用C语言将它在计算机上显示出来. 在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和.这就是我们用C语言写杨辉三角的关键之一. ...

  8. pass,break,continue的使用场景

    # ### 关键字的使用 pass / break / continue # pass 过 起到占位的作用 if 5 == 5: pass print(123) # break 只能应用在循环当中 用 ...

  9. opcode cache与JIT的区别

    要说明opcode cache与JIT的区别,得先明白,字节码,又叫中间码与机器码的区别. 操作码(opcode) 一条机器指令.比如我们汇编语言写的一条操作语句. 机器码(machine code) ...

  10. 2019-04-17-day034-线程与数据共享

    内容回顾 锁 互斥锁 能够保护数据的安全性 保证对于数据的修改操作同一时刻多个进程只有一个进程执行 进程数据不安全 : 同时修改文件/数据库/其他共享资源的数据 ###队列 -- 实现了进程之间的通信 ...