公司現(xiàn)在有一個(gè)業(yè)務(wù)場(chǎng)景:當(dāng)輸入itil網(wǎng)址時(shí),先判斷是否登錄了,沒有登錄,則需要跳轉(zhuǎn)到一個(gè)外部鏈接登錄入口進(jìn)行登錄?,F(xiàn)在問題,出來了!1 當(dāng)跳轉(zhuǎn)到外部登錄鏈接(新開了一個(gè)tab頁)。2 此時(shí),ui-router,會(huì)將跳轉(zhuǎn)的外部鏈接,解析為一個(gè)錯(cuò)誤路由3 當(dāng)跳轉(zhuǎn)錯(cuò)誤路由,會(huì)自動(dòng)重定向到home頁4.而重定向home頁,因?yàn)檫€未登錄,所以又會(huì)跳轉(zhuǎn)到外部登錄鏈接會(huì)重復(fù)剛才的判斷過程,是否登錄,沒有登錄,跳轉(zhuǎn)到外部鏈接。。。,周而復(fù)始,死循環(huán)。 $rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams) { //正常路由跳轉(zhuǎn) 判斷 if(toState.name == 'login') { return; } if(toState.name != 'login') { var currentUrl = window.location.href; var currentState=toState.name; //正常情況下,每一次跳轉(zhuǎn)路由,都要判斷用戶信息是否有效 try{ //1.判斷用戶信息是否存在 及 有效 var userInfo=JSON.parse($cookies.get("userInfo")); $rootScope.loginCode=userInfo.Code; }catch(err){ console.log(err); event.preventDefault(); window.open="http://helloworld:6688/hello/control/main?url=http://localhost:8889/#!/app/home";//跳轉(zhuǎn)到外部登錄鏈接 } } });網(wǎng)上查的各種資料,都看了下,都無法解決 在跳轉(zhuǎn)了外部鏈接后,ui-router不要?jiǎng)幼鳎ú灰獙⑼獠挎溄咏馕鰹殄e(cuò)誤路由,進(jìn)而跳轉(zhuǎn)到home頁,進(jìn)而引發(fā)死循環(huán))。通過在JS在頁面append進(jìn)a標(biāo)簽元素,然后觸發(fā)click事件(強(qiáng)制模擬用戶行為,跳轉(zhuǎn)到外部鏈接),一樣無法解決標(biāo)紅 問題。希望熟悉ui-router原理的大神 或者 之前 有踩過坑的同學(xué),能幫忙分析下,謝謝!
跳轉(zhuǎn)外部鏈接,angular ui-router disable問題
BIG陽
2019-03-14 11:10:07