成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

angular.js - 單頁應用(ng/vue)該如何監聽用戶離開當前頁面(或者路由)?

瀏覽:178日期:2024-03-16 09:52:59

問題描述

場景描述:在ng的某個路由中,需要在用戶離開當前路由時提示用戶是否確認離開

我的疑惑:如果是普通的應用,我們可以使用js來判斷用戶是否要離開,但是在單頁應用中,所有的跳轉離開其實都是在一個頁面中,我想判斷用戶是否離開當前路由,但是沒找到ng提供的公戶離開路由的方法

求各位前輩的思路~

問題解答

回答1:

我只知道Vue可以

route: { deactivate() {... }}回答2:

ui-router里面有一個事件可以監控狀態的改變,回調函數中參數可以記錄當前頁面$rootScope.$on(’$stateChangeStart’, function (event, toState, fromState){});

回答3:

ng中如果使用ui-router來作為路由系統。可以使用ui-router的事件系統來對路由狀態的變化做出相應的業務邏輯。

$rootScope.$on(’$stateChangeStart’,function(event, toState, toParams, fromState, fromParams){ event.preventDefault(); // transitionTo() promise will be rejected with // a ’transition prevented’ error})

詳情可以參考ui-router中的$state

回答4:

js原生通過hashchange事件,來監聽頁面hash是否變化,在單頁面應用中,很多的框架都會封裝這個方法成鉤子函數。

標簽: vue
相關文章: