jsonp react 获取返回值_第11节 React获取服务器API接口数据2019-06-08

本文详细介绍了在React应用中如何使用axios和fetch-jsonp库来获取服务器API接口的数据。首先讲解了axios的安装、引用及示例代码,然后展示了fetch-jsonp的安装、引用及示例代码,两者都通过设置state更新组件数据。
摘要由CSDN通过智能技术生成

目前主要有两种方式:axios、fetch-jsonp

一、axios的使用

1.1安装

1.1.1使用NPM安装

npm install axios --save

1.1.2使用Yarn安装

$ yarn add axios

1.2引用

在哪里使用,在哪里引用

import Axios from 'axios'

1.3Axios示例

/**

* 获取服务器数据

*/

getData=()=>{

var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20';

axios.get(api)

//.then(function (response) {

.then((response)=> {

console.log(response.data.result);

this.setState({

list:response.data.result

})

})

.catch(function (error) {

console.log(error);

});

//alert("获取服务器数据");

}

1.4DEMO示例

import React from 'react';

import 'bootstrap/dist/css/bootstrap.min.css';

import axios from 'axios';

//定义组件

class Axios extends React.Component{

constructor(props){

super(props);

this.state={

list:[]

}

}

/**

* 获取服务器数据

*/

getData=()=>{

var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20';

axios.get(api)

//.then(function (response) {

.then((response)=> {

console.log(response.data.result);

this.setState({

list:response.data.result

})

})

.catch(function (error) {

console.log(error);

});

//alert("获取服务器数据");

}

render() {

return (

axiox获取服务器数据

获取


{

this.state.list.map((value,key)=>{

return

{value.title}

})

}

)

}

}

export default Axios;//导出组件

1.5官网地址

二、fetch-jsonp的使用

2.1安装

npm install fetch-jsonp

2.2引用

import fetchJsonp from 'fetch-jsonp'

2.3fetch-jsonp示例

getData=()=>{

var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20';

fetchJsonp(api)

.then(function(response) {

return response.json()

}).then((json)=> {

this.setState({

list:json.result

})

}).catch(function(ex) {

console.log('parsing failed', ex)

})

}

2.4完整DEMO示例

import React from 'react';

import fetchJsonp from 'fetch-jsonp'

//定义组件

class Fecthjsonp extends React.Component{

//构造函数

constructor(props){

super(props);

this.state={

list:[]

}

}

getData=()=>{

var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20';

fetchJsonp(api)

.then(function(response) {

return response.json()

}).then((json)=> {

this.setState({

list:json.result

})

}).catch(function(ex) {

console.log('parsing failed', ex)

})

}

render() {

return(

你好

获取数据

{

this.state.list.map((value,key)=>{

return

{value.title}

})

}

)

}

}

export default Fecthjsonp;//导出组件

2.5官网地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值