react中如何mock数据
创始人
2024-11-18 18:34:02
0

1.需求说明

因为前后端分离开发项目,就会存在前端静态页面写好了,后端数据接口还没写好;这时候前端就需要自己定义数据来使用。

定义数据有三种方式:直接写死数据、使用mock软件、json-server工具

这里讲解通过json-server工具来获取数据

2.安装插件

npm i -D json-server

3.新建数据文件

在根目录下新建server文件,该文件夹下新建data.json文件用于存储数据

4.更改项目配置文件

package.json

更改前

"scripts": {     "start": "react-scripts start",     "build": "react-scripts build",     "test": "react-scripts test",     "eject": "react-scripts eject"   },

更改后

"scripts": {     "start": "react-scripts start & npm run server",     "build": "react-scripts build",     "test": "react-scripts test",     "eject": "react-scripts eject",     "server": "json-server ./server/data.json --port 8888"   },

说明:

1.需要同时启动项目和工具,工具启动命令是npm run server,项目启动命令是npm run start

2."server": "json-server ./server/data.json --port 8888"代码意思是,server是启动命令、json-server是工具、./server/data.json是数据源位置、--port 8888是设置端口号

3."start": "react-scripts start & npm run server"的意思是,start是启动命令、react-scripts start不知道是什么、& npm run server是代表同时启动server工具;整行代码就是通过npm run start就同时启动项目和启动server工具

4.启动项目和工具可以分开在两个终端控制台启动,分别在两个终端控制台输入各自的命令就行了;也可以在一个控制终端上通过npm run start,前提是有写"react-scripts start & npm run server"

5.测试

import axios from "axios" function Home() {     async function shower() {         // await axios.get('http://localhost:8888/kanno').then(res=>{             // console.log('res:', res.data);          // }) // 通过axios来请求数据         const response = await fetch('http://localhost:8888/kanno'); // 通过fetch来请求数据         const data = await response.json();         console.log('Data:', data);     }     return (         
我是home
) } export default Home

说明:接口地址来源于使用npm run server启动server工具时

6.最终效果

上一篇:House Of Force

下一篇:React的生命周期?

相关内容

热门资讯

word一个文件拆分多个文件 在Word中,您可以使用"拆分文档"功能将一个文件拆分成多个文件。以下是操作步骤:,,1. 打开要拆...
cknife是什么 cknife 是一个用于监控和查看 Kubernetes 集群中容器的 CPU、内存、网络和磁盘等资...
电脑显卡长什么样(显卡的相关知... 电脑显卡通常为矩形板状,带有散热片和风扇。是连接显示器和电脑,处理图像信号的硬件。影响游戏画质和渲染...
Vue element ui分... https://andi.cn/page/621615.html  
电脑锁屏密码在那里设置 电脑锁屏密码通常在操作系统的“设置”或“控制面板”中进行设置。具体步骤因操作系统而异,但通常可以在“...
世界上最大的火锅有多大 世界上最大的火锅直径为12米,深度为1.5米,重达3吨,可同时容纳20人用餐。史上最大的火锅盛宴在何...
React: class 和 ... 一、class1、在react中使用className属性来绑定类名 添加2个类名 2、动态...
滴眼药水时最好滴在眼睛的哪个部... 滴眼药水时最好滴在眼睛的下眼睑结膜囊内,避免直接接触角膜。滴眼药水的正确部位使用滴眼药水时,正确的滴...
yifile是什么 yifile可能是一个拼写错误,您可能是想问“ifile”。ifile是F-italk(法语学习软件...
Python3网络爬虫开发实战... 文章目录一、urllib1. urlparse 实现 URL 的识别和分段2. urlunparse...