Angularjs $location更改了位置?参数分隔符
我不想从我的控制器/工厂/需求/温度打开以下url?open=temperatures,其中参数open=temperatures用于要求页面打开相关弹出窗口,代码如下:Angularjs $location更改了位置?参数分隔符,angularjs,angularjs-ng-route,Angularjs,Angularjs Ng Route,我不想从我的控制器/工厂/需求/温度打开以下url?open=temperatures,其中参数open=temperatures用于要求页面打开相关弹出窗口,代码如下: $scope.openPageUrl = function (url) { closePopover(); console.log("Open page url "+url); $location.path(url); }; <a ng-click="openPageUrl('/plant/ne
$scope.openPageUrl = function (url) {
closePopover();
console.log("Open page url "+url);
$location.path(url);
};
<a ng-click="openPageUrl('/plant/needs/temperatures?open=temperatures')">Click to open</a>
$scope.openPageUrl=函数(url){
closePopover();
console.log(“打开页面url”+url);
$location.path(url);
};
点击打开
不幸的是,我有一个url#/plant/needs/temperatures%3Fopen=temperatures requested,问号替换为%3F,阻止页面打开
有没有办法解决这个问题?如果您试图使用
$location.path
获取当前路径,它将返回不带查询字符串的路径,因为$location.path
无法理解它们。这就是为什么它在附加新路径时对其进行编码
您应该使用不会编码的?
。因为它处理.path
、.search
和.hash
$location.url(url);
看起来字符串是在服务器端编码的。您使用的是什么类型的服务器?请尝试
$location.path(decodeURIComponent(url))你为我省下了这么多痛苦。谢谢。