- vue中的axios与promise (解决 两个或者多个接口 数据依赖的问题)
var bookList_;
var ByBookList_ ;
var promise = new Promise((resolve, reject) => {
this.apis.adminApi
.bookList({
thisPage, totalPagesDate })
.then((res) => {
resolve(res)
var data = res.data
var bookList = data.objList
this.totalData = data.totalData
this.thisPage = data.thisPage
bookList_ = data.objList
})
})
promise.then((res) => {
console.log(bookList_)
this.apis.adminApi.selectUserBook(username).then((res) => {
var data = res.data
if (data.code == 200) {
this.ByBookList = data.backups2
ByBookList_ = data.backups2
}
})
})
- 可以同时调用两个或者 多个接口 对他们返回的数据数据进行二次加工
var _this = this
function bookList_(){
return _this.apis.adminApi.bookList({
thisPage, totalPagesDate })
}
function ByBookList_(){
var username = _this.$store.state.user.userInfo.id
return _this.apis.adminApi.selectUserBook(username)
}
axios.all([bookList_(),ByBookList_()])
.then(axios.spread((res1, res2)=>{
console.log(res1,res2)
}))