React请求数据渲染页面

2023-11-05

1、使用react-fetch数据发送请求

(1)get方法:
	  componentDidMount() {
		       fetch('url')
		        .then(res => res.json())
		        .then(json => this.setState({ list: json }))
	  }
	 
(2)post方法:
	 componentDidMount() {
        fetch('url', {
            method: 'post',  //改成post
            mode: 'cors',  //跨域
            headers: {  //请求头
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            body: "..."   //向服务器发送的数据
        })
        .then(res=> res.json())
        .then(json => {
             console.log(json)
         }) 
	 }

2、利用axios请求数据

		(1)、安装axios
					npm isntall axios --save
		(2)、引入axios
					import axios from 'axios';
		(3)、发送请求
			    axios({
			        method:"POST/GET",
			        headers:{'Content-type':'application/json'},
			        url:URL+url,
			        data:data,
			        // withCredentials:true   跨域请求设置withCredentials
			    }).then( res => {
			        console.log(res);
			        callback(that,res);
			    }).catch( error => {
			        console.log(error);
			    });
		}

3、GET请求获取本地数据json

(1)、在package.json文件里加上
				"proxy": "http://localhost:3000"
				 如下图一
(2)、执行npm start
(3)、把json放到public目录下
            如下图三
(4)、使用GET;POST无法请求本地数据
		 componentDidMount() {
	        fetch('./data.json', {
	            method: "GET",
	            headers: {
	                'Content-Type': 'application/json',
	                'Accept': 'application/json'
	            }
	        })
	        .then(response => response.json()) //解析为Promise
	        .then(data => {
	            this.setState({ data: data })   //赋值到本地数据
	            console.log(this.state.data)
	        })
	    }

4、使用json-server请求虚拟数据

(1)、安装json-server
			npm install json-server -g       
			使用json-server -h 来查看是否安装成功
(2)、在src同级目录下创建mock文件夹,新建data.json 写入数据
		如下图二
(3)、打开新的终端输入
			json-server mock/data.json -p 3000
(4)、在package.json文件中添加
			"proxy":"http://localhost:3000"
(5)、重新运行npm start
(6)、发送请求
			 componentDidMount() {
		        fetch("/data.json", { method: 'GET' })
		            .then( res => res.json()) 
		                console.log(res)
		            .then( data => 
		                console.log(data);
		            )
		        });
		    }

图一:
在这里插入图片描述
图二
在这里插入图片描述

图三
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React请求数据渲染页面 的相关文章

随机推荐

  • 21天学习挑战赛——Python操作MySQL和SqlServer

    目录 1 pymysql模块 2 pymysql模块使用说明 2 1 pymysql操作流程图 2 2 创建连接对象 2 3 获取游标对象 2 4 用法举例 2 4 1 获取一条数据 6 4 2 获取多条数据 6 4 3 对数据进行增删改操
  • 未来社交媒体的变革者

    近日 Meta宣布了其认可的七大社交媒体趋势 这些趋势代表了未来社交媒体发展的核心方向 这些趋势中 生成式AI AR VR营销等引人注目的技术入选 预示着我们即将迎来全新的社交媒体时代 一 生成式AI 像人一样理解并回应 近年来 生成式AI
  • linux 非root用户 安装pyscipopt

    前提 实验室的服务器 我没有root权限 1 尝试用conda方法onda install channel conda forge pyscipopt 出现未知错误 搜遍百度谷歌stackoverflow都没有找到有人和我一样的问题 不知道
  • 基于Java的贪吃蛇小游戏

    一 开发思路 设定一个一定大小的且大小不可变的游戏窗口 在创建的窗口上绘制游戏的基本面板样式 使用提前保存的素材图标绘制一条静态的小蛇 使小蛇能够移动 实际只需蛇头坐标移动 每节身体覆盖前一节身体坐标 设置定时器Timer timer ne
  • Java的异常处理机制

    一 什么是java异常 java异常指在程序运行时可能出现的一些错误 如 文件找不到 网络连接失败 非法参数等 异常是一个事件 它发生在程序运行期间 中断了正在执行的程序的正常指令流 Java通过API中Throwable类的众多子类描述各
  • C# SuperSocket 手把手教你入门 傻瓜教程---9(CountSpliterReceiveFilter - 固定数量分隔符协议)使用COMMAND

    C SuperSocket 手把手教你入门 傻瓜教程系列教程 C SuperSocket 手把手教你入门 傻瓜教程 1 服务器单向接收客户端发送数据 C SuperSocket 手把手教你入门 傻瓜教程 2 服务器和客户端双向通信 C Su
  • Linux服务器wget:unable to resolve host address解决方法

    Linux服务器wget unable to resolve host address解决方法 问题 今天使用虚拟机安装linux系统镜像使用的是CentOS 在一切都准备好的时候 想要去安装Redis时碰到了wget unable to
  • 自定义九宫格控件NineGridLayout ,实现微信朋友圈图片九宫格显示

    前言 很多时候我们都在刷微博或者微信朋友圈的时候都会看到很多图片 而这些图片的显示跟我们平时很多控件的显示方式都不一样 而且 当我们仔细去观察后就会发现 他加载的图片都是根据图片数量动态加载的 根据不同的图片数量来用不同的布局显示 如下图
  • 硬件防火墙和软件防火墙的区别有哪些?

    什么是防火墙 防火墙 指由软件和硬件设备组合而成 在内部网和外部网之间 局域网与外网之间的保护屏障 就像架起了一面墙 它能使网络之间建立起一个安全网关 从而保护内部网免受非法用户的侵入 熟悉互联网的朋友一定对防火墙不陌生 不管是电脑自带的防
  • OBJ格式简单用法

    参考 https www cnblogs com hont p 5239725 html https zhuanlan zhihu com p 342244212 http zwqxin com archives opengl obj mo
  • ceph-deploy命令应用

    记录 336 场景 在CentOS 7 9操作系统上 使用ceph deploy创建ceph集群 部署集群的mon mgr mds osd rgw等组件 版本 操作系统 CentOS 7 9 ceph版本 ceph 13 2 10 名词 c
  • Flask简单调用Redis、MySQL和生成token及token验证

    项目地址 https github com MasonYyp myflask 1 安装python基础环境 安装flask pip install flask 安装redis pip install redis 安装操作MySQL的包 pi
  • 如家酒店房价爬虫

    爬取地址 http m homeinns com hotels J10013 如家精选 北京中关村东路店 首先 从chrome浏览器打开F12审查元素 价格是用背景图片形式展现的 我们先获取背景图片 图片url 图片地址为 http m h
  • Java 基础入门篇(五):面向对象编程

    文章目录 一 面向对象的思想 二 类的定义与对象的创建 三 对象内存分配情况 3 1 两个对象的内存图 3 2 两个变量指向同一个对象内存图 四 构造器 4 1 构造器的格式与分类 4 2 构造器的调用 五 this 关键字 六 封装 七
  • springboot整合shiro(新手教程)

    咱们也就不多哔哔 直接开始 我先放我自己写的项目结构 第一步 想啥了 肯定是先创建一个springboot的项目 第二步 配置pom文件
  • vue3.0新增和删除的内容

    新增组件
  • 关于解决构建maven项目中报错:Failed to execute goal org.apache.maven.pluginsmaven-archetype-plugin

    1 首先进入仓库下面repositoryorgapachemavenplugins这个目录 2 删除目录下的maven archetype plugin文件夹 3 重新加载
  • Streamlit 讲解专栏(十):数据可视化-图表绘制详解(上)

    文章目录 1 前言 2 st line chart 绘制线状图 3 st area chart 绘制面积图 4 st bar chart 绘制柱状图 5 st pyplot 绘制自定义图表 6 结语 1 前言 在数据可视化的世界中 绘制清晰
  • 2022国赛15:Windows——文件共享

    试题内容 四 文件共享 任务描述 为了使局域网中的特定用户 能够访问共享文件夹内的 特定资源 请采用文件共享 实现共享资源的安全访问 1 在 windows1 创建用户主目录共享文件夹 本地目录为 D share home 共享名为 hom
  • React请求数据渲染页面

    1 使用react fetch数据发送请求 1 get方法 componentDidMount fetch url then res gt res json then json gt this setState list json 2 po