鉴于以下javascript:
setSize(PaneDimenson)
当我访问该页面时
setSize
我被重定向到
BASE_URL /搜索
但查询参数丢失。
有没有办法用其他函数传递查询参数?
答案 0 :(得分:0)
你不需要抓住注射器和$ state.go,根本不需要。 otherwise
方法的参数可以是一个网址路径,可以在其中包含参数。
因此,在您的特定情况下,以下代码可以引导您进入 base_url / search?query = x
$urlRouterProvider.otherwise("/search?query=x");
或者,参数可以是返回URL路径的函数。如果您不确定它可能具有哪些URL参数,您只需要从$location
获取参数然后格式化为类似URL的字符串并将其返回。
$urlRouterProvider.otherwise(function($injector, $location) {
var params = $location.search()
// format params to 'p1=v1&p2=v2' style
var formatted = Object.keys(params).map(function(key) {
return key + '=' + params[key]
}).join('&')
return '/search?' + formatted
});