一、什么是 axios

Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中

二、axios 的安装

1、在项目根目录终端引入:

npm isntall --save axios

2、在使用 axios 的 js 文件中加入:

import axios from 'axios';

三、axios 的使用

这里引用 mock-api 生成的数据,结合Ant Design 组件库做一个导航列表

(1)初始化列表数据 list

constructor(props) {
super(props);
this.state = {
list: []
}
}

(2)创建 Menu 组件传入生成列表 Menu.Item 的函数 getMenuItems()

render() {
return (
<React.Fragment>
<Menu mode="horizontal">
{ this.getMenuItems() }
</Menu>
</React.Fragment>
)
}

这里的 Menu 为 Ant Design 组件库中的导航菜单组件

(3)完善函数 getMenuItems()

getMenuItems() {
return this.state.list.map(item => {
return (
<Menu.Item key={item.id}>
<Icon type={item.icon} />{item.title}
</Menu.Item>
)
})
}

(4)通过 axios 请求数据

componentDidMount() {
axios.get('http://mock-api.com/Ln4LX4nx.mock/winniebloglistdata')
.then((res) => {
this.setState({
list: res.data.data
})
})
}

这里的数据由 mock-api 生成

源数据文件:

{
"success": true,
"data": [{
"id": ,
"icon": "align-left",
"title": "列表1"
}, {
"id": ,
"icon": "align-left",
"title": "列表2"
}, {
"id": ,
"icon": "align-left",
"title": "列表3"
}, {
"id": ,
"icon": "align-left",
"title": "列表4"
}, {
"id": ,
"icon": "align-left",
"title": "列表5"
}, {
"id": ,
"icon": "align-left",
"title": "列表6"
}]
}

运行效果:

更多 axios 使用请参考 http://www.axios-js.com/zh-cn/docs/

React使用axios请求并渲染数据的更多相关文章

  1. vue中Axios请求豆瓣API数据并展示到Swipe中

    vue中Axios请求豆瓣API数据并展示到Swipe中 1.首先是安装Axios: 安装方法cnpm install axios --save 等待npm安装完毕: 2.在main.js中引入axi ...

  2. 【React自制全家桶】七、React实现ajax请求以及本地数据mock

    一.下载axios插件 yarn add axios 二.React的ajax请求代码如何放置 建议放置在生命周期函数之componentDidMount()中 三.ajax之get请求 axios. ...

  3. ajax和axios请求本地json数据对比

    AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进 ...

  4. VUE 使用axios请求第三方接口数据跨域问题解决

    VUE是基于node.js,所以解决跨域问题,设置一下反向代理即可. 我这里要调用的第三方接口地址为 http://v.juhe.cn/toutiao/index?type=top&key=1 ...

  5. react中跨域请求天气预报接口数据

    背景故事:同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能, 如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源策略基础之上 ...

  6. Vue中如何使用axios请求跨域数据

    1.axios不支持jsonp,因为axios的作者觉得jsonp不太友好,推荐用CORS方式更为干净: 2.在使用axios发送请求时,服务器端设置 res.header("Access- ...

  7. 21 Flutter仿京东商城项目 商品详情 请求接口渲染数据 商品属性数据渲染

    加群452892873 下载对应21可文件,运行方法,建好项目,直接替换lib目录,在往pubspec.yaml添加上一下扩展.   cupertino_icons: ^0.1.2   flutter ...

  8. angular,vue,react的基本语法—插值表达式,渲染数据,响应式数据

    基本语法: 1.插值表达式: vue:{{}} react:{} angular:{{}} 2.渲染数据 vue js: export default{ data(){ return{ msg:&qu ...

  9. drf框架 - 请求模块 | 渲染模块

    Postman接口工具 官方 https://www.getpostman.com/ get请求,携带参数采用Params​post等请求,提交数据包可以采用三种方式:form-date.urlenc ...

随机推荐

  1. Kubernetes 监控方案之 Prometheus Operator(十九)

    目录 一.Prometheus 介绍 1.1.Prometheus 架构 1.2.Prometheus Operator 架构 二.Helm 安装部署 2.1.Helm 客户端安装 2.2.Tille ...

  2. 最新 学霸君java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.学霸君等10家互联网公司的校招Offer,因为某些自身原因最终选择了学霸君.6.7月主要是做系统复习.项目复盘.LeetCo ...

  3. 【RSR】RSR如何配置BGP与BFD联动(动态路由)

    应用场景 企业租用运营商MSTP线路,配置BGP路由协议上网,由于企业本端出口路由器无法检测到运营商中间链路通信中断,导致路由收敛缓慢,无法快速的切换到其它备份线路,此时可以在路由器上启用BGP与BF ...

  4. vcf和bed的位置信息区别

    vcf和bed的位置信息区别 vcf和gff一般是从1-base开始计数,也就是文件里所代表的的位置是染色体的真实位置 bed文件一般所代表的位置是从0开始计数的,是一个半闭合区间,也就是(0,200 ...

  5. UI测试用例设计,场景测试法

    百度一番,没有发现详细的UI测试用例设计方法,只能自己整理一下,学习.改进. 那么正题来了,我们慢慢缕下思路: 1.整理要测实体中的,处理逻辑.触发规则.动作. 2.将场景测试抽象出来 3.到这个时候 ...

  6. 作业调度框架Quartz.NET-现学现用-01-快速入门

    原文:作业调度框架Quartz.NET-现学现用-01-快速入门 前言 你需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行.一个自动执行而无须干预的任务在执 ...

  7. ADO.NET 四(DataReader)

    DataReader 类概述 DataReader 类对应MSSQLSERVER在 System.Data.SqlClient 命名空间中,对应的类是 SqlDataReader,主要用于读取表中的查 ...

  8. Hibernate中Session.get()/load()之区别

    原文链接http://sunxin1001.iteye.com/blog/292090 Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象.其区 ...

  9. 不能在本机启动SQL Server服务错误代码126(要在协议里面禁用所有别的VIA,是怎么回事?)

    在启动数据库sql服务的时候提示[Windows 不能在 本地计算机 启动 SQL Server . 有关更多信息,查阅系统事件日志.如果这是非 Microsoft 服务,请与服务厂商联系,并参考特定 ...

  10. CSS的基本知识

    与HTML相同,CSS也是一种标识语言,即可以在任何文本编辑器中打开和修改 CSS的基本结构 选择器(Selector) 选择器告诉浏览器该样式将会作用于哪些对象,这些对象可以是某个标签.某个对象.网 ...