而若使用axios的話,就是坑爹的request payload,不是form data引數。
為了達到content-type這種效果作者提供了兩種方法。第一種使用new urlsearchparams(),但是這種方法相容有點不好。
var params = new urlsearchparams();
axios.post('/foo', params);
所以我使用的是第二種方法,使用node_modules資料夾中的qs模組。因為我之前已經將ajax請求稍微封裝了一下(下面說的**基本都是在ajax.js中新增的),所以改動其實真不多。
安裝axios模組就不說了,先將axios和qs引用進來。
import然後將傳送的請求引數外面使用qs.stringify進行包裹。axios from
'axios'
;import
qs from
'qs'
;
qs最後將接受的結果,提取正確的字段。(在vue-resource中正檔案是response.body,而在axios中正文則是response.data。這個需要注意一下).stringify
(data
)
console.log(response.data) //這個列印出來的就是返回的結果其中response中則有一些請求狀態等等相關的引數,我這邊很少用到,所以就不列出來了。
只需上面三步,就完成了vue-resource到axios的轉換。同時解決了axios傳送x-www-form-urlencoded的需求,特別方便吧~
另外貼上我整個ajax.js檔案,中間用到了加密解密,可以無視一下。
import可以完善的地方還有很多,歡迎拍磚~vuefrom
'vue'
;import
axios from
'axios'
;import
qs from
'qs'
;//匯入資料加密方法
import
secretjs from
'./secret'
;//當前執行環境
vardomain
='***'
;//封裝ajax
varajax
=else}}
else})
//ajax完成}}
export
default
ajax
;
使用vue2搭建豆瓣電影
使用vue cli腳手架搭建,按照步驟執行即可 npm install g vue cli vue init webpack doubanmovie cd doubanmovie npm install npm run dev ui庫使用的是element ui,直接引用使用 import elem...
vue2新人入門
預設對webpack,sass,npm有一定的了解。一些vue指令不會說,反正官方文件有,我也懶得抄。一 超級基礎部分 1.全域性安裝 npm install globall vue cli 已全域性安裝了的不必安裝 2.建立乙個基於webpack的模板專案 vue init webpack 你的專...
Vue2學習筆記
v cloak v text v html v bind v on click.stop click.prevent click.capture click.self click.once v model.lazy trim number 或者通過vue的watch監聽來處理watch b func...