在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ Promise 異步問題

Promise 異步問題

axios 全局請求攔截器里需要請求一個方法拿到返回值 在return config
因為請求方法時異步的 所以采用Promise

axios.interceptors.request.use(config => {
    return new Promise(resolve => {
        window.__nativeFn("js_getAllDeviceInfo", {
            // ios的響應結(jié)果
            response: r => {
                config.data = Object.assign(config.data, r.data)
                // window.vue.$Tips.info(r.data, 2000)
                resolve(config)
            }
        })
    })

}, error => {
    return Promise.reject(error)
});

當一個頁面只有一個請求的時候這個是ok的, 當一個頁面有多個請求的時候 最后一個請求的config會覆蓋掉之前的所有請求的config 并且也只發(fā)送了一次請求 不知道為什么會這樣。 如果解決該怎么解決?或者采用什么方式可以達到我想要的結(jié)果 等ios響應后 在return config

回答
編輯回答
妖妖

別光發(fā)promise的定義代碼,也要發(fā)你怎么調(diào)用的。。。

2018年1月27日 11:44
編輯回答
夏夕

感謝各位回答者, 是因為我__nativeFn方法封裝的問題 因為每個接口請求前都需要調(diào)用 js_getAllDeviceInfo這個ios方法。 我response 這個匿名函數(shù)是自動生成掛載在window上的 所以第二個第三個等等api請求一直在重寫這個方法

2017年8月18日 15:51
編輯回答
墨小白

每一次請求都去獲取一次設(shè)備信息嗎?為什么不緩存起來?

2017年6月11日 21:34