VUE爆弾のタイマー+ボックスには、ランディングページにジャンプします


1.傍受のための要求を作成し、プロンプトボックス数秒を再生した後、その後、着陸またはホームページにジャンプし、直接ジャンプするには、[OK]をクリックし
インターセプトにこれを取った。$ Axios.interceptors.response
VUXコンポーネントをページに爆弾ボックスコンポーネント
VUXアドレス:https://doc.vux.li/zh-CN/
<モデル=の確認-V "errorsToken" 
テーマ= "アンドロイド"
を確認し、テキスト= "OK"
"falseに"ショー・ボタン- =キャンセル
({: '/'のパス})@ ON-確認=「$のrouter.push 「>
<Pスタイル=」フォントサイズ:(3秒が自動的にランディングページにジャンプした後).34rem「>トークンの有効期限が切れた、もう一度ログインしてください。</ p型>
</確認してください>


拦截
。この$のaxios.interceptors.response.use((応答)=> {
afterLoad.push(応答);
IF(response.data && response.data.msg === 'はerror_landed'){
this.errorsTip = TRUE。
この$のrouter.push({パス: '/'});
}
もし(response.data &&(response.data.status === 'エラー' && response.data.msg === 'ERROR_TOKEN_INVALID')&&応答.config.url.indexOf( '/アプリ/ログイン')<0){
source.cancel( '请求失败请重新登入');
     //用于开启弹框的確認组件
this.errorsToken =真;
(もし! this.timer){
this.timer =たsetInterval(()=> {
てclearInterval(this.timer);
この。= NULLタイマ;
//弾性ブロックを開くため
                偽this.errorsToken =; 
//跳转的页面写在此处
。この$ router.push({パス: '/'})。
}、3000)。
IF(this.errorsToken ===偽){
。この$ router.push({パス: '/'})。
}
}

CancelToken =この$ axios.CancelToken。
ソース= CancelToken.source()。
window.sessionStorage.clear();
window.localStorage.clear();
応答を返します。
}
IF(afterLoad.length === berferLoad.length){//加载全部完成后
loadingEnd()。
}
レスポンスを返します。
}、(エラー)=> {
    //何か間違った応答を行う
。この$ CancelTokenを= axios.CancelToken ;.
ソース= CancelToken.source();
; Promise.reject(エラー)を返す
});

効果

 

 

おすすめ

転載: www.cnblogs.com/d0minic/p/11281977.html