axios 模擬同步請求


axios本身沒有同步請求,但是我們很多情況下必須得需要同步請求。那么應該怎么做?

 

上網查了一些資料有人說用es6的 async +  assert 我不知道有沒有效果,因為我的功能中是沒啥效果的。

那么怎么辦?項目得接着寫,說實話,作為一個后端開發,es6是屬實不是很了解。但是我記得以前在某篇博客中見到過一個es6的新語法 promise,他好像可以。抱着試一下的心態,果然有效果!!!

使用詳情請見 https://www.runoob.com/w3cnote/es6-promise.html

那么我的項目是vue項目,那么應該怎么用?

        listPers: function (parentId) {
                return new Promise((resolve, reject) => {
                    this.axios.get('/sysPer/add=pers', {
                        params: {
                            parentId: parentId,
                        }
                    }).then((res) => {
                        if (res.data.code === 200) {
                            if (this.sysPer.parentId1 === 0) {
                                this.firstMenu = res.data.datas;
                            } else if (this.sysPer.parentId1 > 0) {
                                this.secondMenu = res.data.datas
                            }
                            return resolve(true);
                        } else {
                            return resolve(false)
                        }
                    })
                })
            },        

那么這樣我們可以這樣調用該方法

this.listPers(0).then(res => {
        if(res){
           //執行的代碼   
        }
});


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM