对$ location服务的更改没有反映到浏览器地址栏中

问题描述:

我有一个如下的函数用于路由到特定的页面。这里的问题是$location.url(url).search(search);正在执行,我可以看到调试器中反映的更改,但更改没有反映到浏览器地址栏中。

var routeToPage = function (page, search) { 
    if (angular.isDefined(page) && null !== page) { 
     var url = page; 
     url = url.substring(url.length-1) === '/'? url.substring(0, url.length-1): url; 
     $timeout(function() { 
      if (search) { 
       $location.url(url).search(search); 

      } else { 
       $location.url(url); 
      } 
     }); 
    } 
}; 

我试过$window.location.assign(url);和它的工作正常,但我也需要搜索参数。任何帮助将不胜感激。

$location.url(url).search(search);

+0

新增'$范围添加$scope.apply。$应用()',最后我的问题是你resolved.Thank。 –