Axios异步通讯快速教程
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中实现ajax 异步通讯的扩展插件。
特性
- 从浏览器中创建 XMLHttpRequests
- 从 node.js 创建 http 请求
- 支持 Promise API
- 拦截请求和响应
- 转换请求数据和响应数据
- 取消请求
- 自动转换 JSON 数据
- 客户端支持防御 XSRF
在Vue中使用Axuis
安装Axios:
npm install --save axios vue-axios
Axios API:使用axios
可以传递其他链接下的数据,以及传递数据.
main.js中进行配置Axios:
import axios from 'axios'
import VueAxios from 'vue-axios'
Vue.use(VueAxios, axios)
在前后端分离项目进行前后端链接通讯.
<div id="vue">
<div>
{{info.name}}
{{info.address.city}}
<a v-bind:href="info.url">Baidu</a>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script>
var vm = new Vue({
el: "#vue",
data:{
info:null
},
mounted(){ //钩子函数
axios.get('../data.json').then(response=>(this.info=response.data));
}
});
</script>
data.json:
{
"name":"test",
"url": "http://baidu.com",
"page": 1,
"isNonProfit":true,
"address": {
"street": "含光门",
"city":"陕西西安",
"country": "中国"
},
"links": [
{
"name": "bilibili",
"url": "https,://www.bilibili.com/"
},
{
"name": "4399",
"url": "https,://www.4399.com/"
},
{
"name": "百度",
"url": "https,://www.baidu.com/"
}
]
}
mounted(){ //钩子函数
axios.get('../data.json').then(response=>(this.info=response.data));
}