如何解析路由 Angular 1 中作为查询参数的编码 url?



在我的路线中,我有这个。但是,我找不到正确解码网址的方法。该页面仅重定向到基本网址(而不是重定向网址(。url 被编码,所以/%2F什么,但我不知道如何制作它,所以我可以接受它作为查询参数。

.config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider) {
$stateProvider
.state('example', {
url: '/{test}/{queryParameterUrl}',
controller: 'exampleCtrl as example',
template: require('./partials/test.html')
});

在您的exampleController中,您可以访问状态参数,解析它并在以后使用它进行重定向,如下所示:

app.controller('exampleCtrl', ['$state', function ($state) {
var exampleCtrl = this;
exampleCtrl.parsedRedirectUrl = $state.params.urlredirect.replace(/%2F/g, '/')
}]);

例如,在 HTML 中,使用链接重定向

<a href="{{example.parsedRedirectUrl}}">Redirect</a>

附言在状态定义中,使用controllerAs

.config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider) {
$stateProvider
.state('example', {
url: '/{test}/{urlredirect}',
controller: 'exampleCtrl',
controllerAs: 'example',
template: require('./partials/test.html')
});

最新更新