請求數據的方式:php
使用步驟:
一、安裝vue-resource
模塊vue
cnpm install vue-resource --save
二、在 main.js
引入 vue-resource
ios
import VueResource from 'vue-resource'; Vue.use(VueResource);
三、在組件裏面直接使用npm
this.$http.get(地址).then(function(){ })
實例:
Info.vuejson
<template> <div id="info"> <button @click="getData">獲取數據</button> <ul> <li v-for="(item,index) in list" v-bind:key="index"> {{item.title}} </li> </ul> </div> </template> <script> export default { name: "Info", data() { return { list: [] } }, methods: { getData: function () { let api = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1'; //此處推薦使用箭頭函數。 this.$http.get(api).then((res)=>{ this.list = res.body.result; }, (err)=>{ console.log(err); }); } }, mounted() { this.getData(); } } </script>
若是getData()
中不適用箭頭函數,就須要注意this
問題。axios
getData: function () { let api = 'http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1'; const _this = this; this.$http.get(api).then(function (res) { _this.list = res.body.result; }, function (err) { console.log(err); }); }
axios 與 fetch-jsonp 同爲第三方插件
一、安裝api
cnpm install axios --save
二、哪裏用哪裏引入axiosapp
Axios.get(api).then((response)=>{ this.list=response.data.result; }).catch((error)=>{ console.log(error); })
一、安裝函數
cnpm install fetch-jsonp --save
二、哪裏用哪裏引入axiosvue-resource
fetchJsonp('/users.jsonp') .then(function(response) { return response.json() }).then(function(json) { console.log('parsed json', json) }).catch(function(ex) { console.log('parsing failed', ex) })