vue?項目中常用的?2?個?ajax?庫?:vue-resource政冻,?axios
1.?vue-resource
下載:cnpm?install?vue-resource?--save
編碼:
//?引入模塊
import?VueResource?from?'vue-resource'
//?使用插件
Vue.use(VueResource)
//?通過?vue/組件對象發(fā)送?ajax?請求
this.$http.get('/someUrl').then((response)?=>?{
//?success?callback
console.log(response.data)?//返回結(jié)果數(shù)據(jù)
},?(response)?=>?{
//?error?callback
console.log(response.statusText)?//錯誤信息
})
2.?axios?的使用
下載:cnpm?install?axios?--save
編碼:
//?引入模塊
import?axios?from?'axios'
//?發(fā)送?ajax?請求
axios.get(url)
.then(response?=>?{
console.log(response.data)?//?得到返回結(jié)果數(shù)據(jù)
})
.catch(error?=>?{
console.log(error.message)
})
測試接口:
接口?1:
https://api.github.com/search/repositories?q=v&sort=stars
接口?2:
https://api.github.com/search/users?q=aa
vuex?(?對?vue?應(yīng)用中多個組件的共享狀態(tài)進行集中式的管理(讀/寫)?)
下載:cnpm?install?--save?vuex
vuex?核心概念和?API
1.state
1)vuex?管理的狀態(tài)對象
2)它應(yīng)該是唯一的
2.mutations
1)包含多個直接更新?state?的方法(回調(diào)函數(shù))的對象
2)誰來觸發(fā):?action?中的?commit('mutation?名稱')
3)只能包含同步的代碼,?不能寫異步代碼
3.actions
1)包含多個事件回調(diào)函數(shù)的對象
2)通過執(zhí)行:?commit()來觸發(fā)?mutation?的調(diào)用,?間接更新?state
3)誰來觸發(fā):?組件中:?$store.dispatch('action?名稱',?data1)?//?'zzz'
4)可以包含異步代碼(定時器,?ajax)
4.getters
1)包含多個計算屬性(get)的對象
2)誰來讀取:?組件中:?$store.getters.xxx
5.modules
1)包含多個?module
2)一個?module?是一個?store?的配置對象
3)與一個組件(包含有共享數(shù)據(jù))對應(yīng)