为什么我不能在控制器中获得以前的URL?

时间:2016-10-07 19:22:08

标签: angularjs

我正在使用AngujarJS 1.5处理我的单页应用程序项目。

在我的控制器中的某个时刻,我需要获取以前的URL。

我尝试使用此代码获取以前的网址:

  var prevUrl = $document[0].referrer;

和此:

var prevUrl2 = document.referrer;

prevUrlprevUrl2始终为空。

当我使用此代码返回时:

$window.history.back();

工作正常。

正如Umakant Mane所建议的那样:

我试过了:

dashboard.run(["$rootScope",
    function($rootScope) {
        $rootScope.$on('routeChangeStart', function (evt, absNewUrl, absOldUrl) {
            //routeHistory.push({ route: from, routeParams: fromParams });
            console.log('success', absOldUrl.templateUrl);
    }); 
}])

我希望在控制台中收到一条消息,但我没有收到任何消息。

知道为什么prevUrlprevUrl2为空?

1 个答案:

答案 0 :(得分:0)

App.run(function($rootScope) {
 $rootScope.$on('$routeChangeStart', function(evt, absNewUrl, absOldUrl) {
       console.log('success', absOldUrl.templateUrl);

     });
 }); 

     Register this function in main index.js file where you register your angular app and assign this result to one global variable and use it
   Hope this may helps.