去年底 Vue 作者(Evan You)宣佈vue-resource
不再是官方推薦,參考這篇文章
比起Angular、React,你會發現 Vue.js 的維護團隊小很多,若是一個套件有第三方資源替代,維護團隊就可以火力集中在其他戰場。
vue-resource
可以繼續用,但猜想它的功能不太可能追加了。
這篇介紹功能更強的替代方案之一 - Axios
不變的先講,同樣透過npm
、bower
安裝
$ npm install axios --save
或透過CDN引用
已經用vue-resource寫了不少功能,想維持原本寫法?
沒問題!
其API與vue-resource
對應
同樣支援 promise
/* 送出GET */
axios.get('/someUrl')
.then(function (response) {
/* 成功拿到資料,然後... */
})
.catch(function (error) {
/* 失敗,發生錯誤,然後...*/
});
將axios
指給$http
屬性後,搭啦!
/* 不用像前一篇載入Vue plugin */
Vue.prototype.$http = axios
{
this.$http.get('/someUrl')
.then((response) => {
/* 成功拿到資料,然後... */
.catch((response) => {
/* 失敗,發生錯誤,然後...*/
})
.finally(() => {
/* 不論成功失敗,都做些事 */
});
}