Jsonserver模拟前后端请求(react项目实践)

简介: Jsonserver模拟前后端请求(react项目实践)

前言

大家好 我是歌谣 今天应中间方的要求 写接口之前先用json server模拟数据格式 一开始觉得是比较麻烦的东西 但是用了之后发现是真的好


安装命令

npm install -g Json-server


执行命令加端口

json-server --watch db.json --port 5000


模拟五个json接口

db.json


```


{ "produceText": [ { "po": "1000", "id": 1 }, { "id": 2, "code": "WF230146", "styleId": 2, "styleNumber": "G15661", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 3, "code": "WF230147", "styleId": 3, "styleNumber": "B30131012", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 4, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 5, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 6, "code": "WF230145", "styleId": 1, "styleNumber": "002", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 7, "code": "WF230146", "styleId": 2, "styleNumber": "G15661", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 8, "code": "WF230147", "styleId": 3, "styleNumber": "B30131012", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 9, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 10, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 11, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 12, "code": "WF230148", "styleId": 4, "styleNumber": "6021", "registerDate": "2023-04-24 18:50:10", "po": "2" }, { "id": 13 } ], "produceTextDetail": [ { "165": "1", "170": "2", "175": "1", "180": "1", "materalId": "1", "materalName": "领子", "fileName": "面料-1.44M-175", "fileId": "领子", "time": 2, "status": "是", "width": "2", "mark": "7" }, { "165": "1", "170": "2", "175": "1", "180": "1", "materalId": "1", "materalName": "领子", "fileName": "面料-1.44M-175", "fileId": "领子", "time": 2, "status": "是", "width": "2", "mark": "7" }, { "165": "1", "170": "2", "175": "1", "180": "1", "materalId": "1", "materalName": "领子", "fileName": "面料-1.44M-175", "fileId": "领子", "time": 2, "status": "是", "width": "2", "mark": "7" }, { "165": "1", "170": "2", "175": "1", "180": "1", "materalId": "1", "materalName": "领子", "fileName": "面料-1.44M-175", "fileId": "领子", "time": 2, "status": "是", "width": "2", "mark": "7" } ], "StyleNumberList": [ { "id": 1, "name": "002" }, { "id": 2, "name": "G15661" }, { "id": 3, "name": "B30131012" }, { "id": 4, "name": "6021" } ], "MatuDataList": [ { "id": 1, "name": "WF230145" }, { "id": 2, "name": "WF230146" }, { "id": 3, "name": "WF230147" }, { "id": 4, "name": "WF230148" } ], "MatrialList": [ { "id": 1, "name": "面布",


"children": []
},
{
  "id": 2,
  "name": "面料1",
  "children": []
},
{
  "id": 3,
  "name": "面料2",
  "children": []
},
{
  "id": 4,
  "name": "面料3",
  "children": []
}



], "FileDataList": [ { "id": 1, "name": "5622-1345", "flag": true }, { "id": 2, "name": "5622-1346", "flag": true }, { "id": 3, "name": "5622-1347", "flag": true }, { "id": 4, "name": "5622-1348", "flag": true } ] } ```


运行结果

image.png


质疑

1.跨域问题 (后来验证没有) 2修改问题 (根据id修改)


下一步

直接加入axios


``` import axios from "axios"; // 引入axios const instance = axios.create({ baseURL: "http://localhost:5000", timeout: 60000, }); // 请求拦截器 instance.interceptors.request.use( function (config) { console.log("发请求之前", config); return config; }, function (error) { console.log("请求错误", error); return Promise.reject(error); } ); // 响应拦截器 instance.interceptors.response.use( function (response) { console.log("得到的响应数据", response); return response; }, function (error) { console.log("响应错误", error); return Promise.reject(error); } ); // get请求 export function get(url, data = {}) { console.log(data, "datattattata"); return new Promise((resolve, reject) => { instance .get(url, { params: data, }) .then((response) => { resolve(response); }) .catch((err) => { reject(err); }); }); } // post请求 export function post(url, data = {}) { return new Promise((resolve, reject) => { instance.post(url, data).then( (response) => { resolve(response.data); }, (err) => { reject(err); } ); }); }


```


``` import {get,post} from "../request" import {returnMsg } from "../return"


export const UserLogin = data => post('/pda/login', data) //查询任务界面 export const getLayData = async data => await returnMsg(get('/pda/selectPDAAuth', data))


export const ProduceText = async data => await returnMsg(get('/produceText', data))


export const produceTextDetail = async data => await returnMsg(get('/produceTextDetail', data))


export const StyleNumberList = async data => await returnMsg(get('/StyleNumberList', data))


export const MatuDataList = async data => await returnMsg(get('/MatuDataList', data))


export const MatrialList = async data => await returnMsg(get('/MatrialList', data))


export const FileDataList = async data => await returnMsg(get('/FileDataList', data))


```


修改

axios.put(`http://localhost:5000/produceText/${info.id}`, { po: form.getFieldValue("po") }).then(res => { console.log('修改成功') props.onConfirm(); })


模拟查询

image.png


总结

可以快速的增删改查接口 秀啊


相关文章
|
1月前
|
前端开发 JavaScript 测试技术
从零开始搭建react+typescript+antd+redux+less+vw自适应项目
从零开始搭建react+typescript+antd+redux+less+vw自适应项目
49 0
|
3月前
|
前端开发 开发者
探索前端框架的新趋势:React Hooks的应用与实践
本文将深入探讨前端开发中的新趋势,重点介绍React Hooks的应用与实践。通过学习和使用React Hooks,开发者可以更高效地构建可维护、可扩展的前端应用程序。本文将详细介绍React Hooks的原理、优势以及如何在实际项目中运用Hooks来提高开发效率并改善代码结构。无论你是刚入门前端开发还是经验丰富的工程师,本文都将对你有所启发。
|
3月前
|
前端开发 API 数据安全/隐私保护
【第45期】一文解决React项目的权限管理
【第45期】一文解决React项目的权限管理
106 0
|
3月前
|
Web App开发 资源调度 JavaScript
竟然可以在一个项目中混用 Vue 和 React?
竟然可以在一个项目中混用 Vue 和 React?
101 0
|
4月前
|
前端开发 API
react如何进行项目配置代理
react如何进行项目配置代理
58 0
|
1月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
|
1月前
|
存储 JSON 前端开发
react保姆级搭建新项目
此文主要以ts+vite+router6+antd 快速搭建一个react项目,适用于初学者,用于学习交流
|
1月前
|
移动开发 JavaScript 前端开发
vue/react项目刷新页面出现404的原因以及解决办法
vue/react项目刷新页面出现404的原因以及解决办法
177 0
|
2月前
|
前端开发 JavaScript API
React拖拽实践
React拖拽实践
22 0
|
3月前
|
前端开发 JavaScript API
Github 上 8 个很棒的 React 项目
Github 上 8 个很棒的 React 项目
230 0