一、安装
yarn add axios
二、直接请求
//1.导入axiosimport axios from 'axios'class App extends React.Component{ constructor(props){ super(props); this.state={ songs:[] } }//2.发送请求componentDidMount(){ var url='http://192.168.14.15:5000/search?keywords=海阔天空' axios.get(url).then(res=>{ var songs=res.data.result.songs; this.setState({ songs }) }) }//3.渲染 render(){ {this.state.songs.map(item=>{ return (<div key={item.id}> <p> {item.name}</p> </div>) ) }
三、将axios挂载原型再请求
3-1 index.js配置
//axios挂载到原型上import axios from 'axios';React.Component.prototype.$http = axios;
3-2请求数据
componentDidMount(){ var url = "https://music.aityp.com/top/playlist?cat=华语" this.$http.get(url).then(res=>{ this.setState({ musics:res.data.playlists }) }) }
3-3渲染数据
//父组件render() { return ( <div className="content"> {this.state.musics.map((item,index)=>{ return( <div key={index} onClick={this.handleDetail.bind(this,item.id)}> <MusicItem data={item} ></MusicItem> </div> ) })} </div> ); }//子组件 render() { return ( <div className="music-item"> <img src={this.props.data.coverImgUrl} alt="" /> <p>{this.props.data.name}</p> </div> ); }