自定义 Angularjs 的 $location.search 的 url 格式

Customize url format of Angularjs's $location.search

是否可以更改 $location.search(params) 创建的 url,而根本不更改功能?例如,可以将 /page?movie=836 更改为 /page/movie/836 之类的内容吗?

没有。 $location.search() 只需抓取 URL 的 query 部分并为方便起见对其进行解析。或者作为 setter 它更新浏览器的查询部分 URL.

您可以将 search() 文字转换为 "REST" 形式并使用 $location.url() 重定向:

如果$location.path() == /page?movie=836


var url = $location.path()
for (var key in $location.search()) {
  url += '/' + key + '/'+ $location.search()[key]
}   

$location.url( url ) // redirect to /path/movie/836