資料請求有兩個問題,乙個是工具選擇,乙個是**組織問題
我看過一些別人寫的專案,有直接用jquery提供的ajax介面,有自己封裝了乙個fetch介面,當然更多的是選擇vue的第三方資料請求模組,說的最多的是vue-resource和axios;axios是目前最推薦的,但是我最終還是暫時選擇了vue-resource,原因很簡單,在國內還是有很多jsonp需求的,而後者不支援,原因很簡單作者不喜歡jsonp,它認為這是一種跨域的hack方式,是不好的所以也沒準備支援。
為了防止工具切換,我做了乙個http的簡單**,也就是資料請求**不直接呼叫第三方api,而是通過乙個中間**對映下方法,這樣以後要換工具,也不至於苦逼的乙個個替換介面。vue-resource的具體api直接參見它的github上的文件:
關於vue-resource再補充一點: get請求如果要傳參,寫法是比較特殊的,是第二個引數的params屬性,而不是直接第二個引數,寫慣了jquery的容易採坑
vue.$http.get('getuserinfo.php',)具體引數寫法人家寫的很清楚了:
這是我的目錄,資料請求相關模組幾種在server裡面
1. config
這個是全域性配置檔案,做了兩件事情:全域性路徑配置(當然也還可以做些其它配置,比如header),**http返回
//http**物件
這是個ajax劫持返回假資料測試的功能,參照mockjs
import mock from 'mockjs'3. userconst root = '/'
var login = mock.mock(]
})if(process.env.node_env !== 'production')
這個是具體的資料請求模組,我看到過有些專案把所有請求集中在乙個檔案,如果比較多實在太大,所以這裡可以分開來,使用者相關請求只在user裡面
最後,我們可以在vue元件中引入user模組做資料請求,或者在vuex的action中使用:
Vue系列十九 ajax請求
一 vue resource vue 外掛程式,非官方庫,vue1.x 使用廣泛。返回的是乙個promise。文件 1 在main.js中宣告使用vue resource import vueresource from vue resource 宣告使用元件 vue.use vueresource ...
vue資料請求
我是vue菜鳥,第一次用vue做專案,寫一些自己的理解,可能有些不正確,歡迎糾正。vue開發環境要配置本地 服務。把config檔案加下的index.js裡的dev新增一些內容,dev 然後就是在main.js檔案裡新增一下內容 import axios from axios vue.prototy...
Vue 資料請求
從vue的2.0開始,作者說 vue resource不再維護了 why xmlhttprequest 是乙個設計粗糙的 api,配置和呼叫方式非常混亂,而且基於事件的非同步模型寫起來不友好。檢視相容性 相容性不好 polyfill body name 張三 age 100 then res res...