Angularjs:在 url 上使用没有尾部斜杠的查询字符串时出现问题
Angularjs: Issue when a query string is used on url without trailing slash
在 asp.net mvc 站点中使用 Angular 1.5。
我有一个基本标签:
<base href="/fr/">
并且已设置 html5 模式。
网站运行良好。我使用 ui-router...没问题。
但是今天我点击了一个,这是当我尝试浏览到这种 url:
我收到来自 angular 的错误:
url 未定义
如果我导航到 /fr/?arg=1(带有尾部斜杠),错误就会消失。
如果我导航到 /fr/about/?arg=1,它将导航到索引页面但不会触发 "about" 状态。
如何使查询字符串起作用?
更新:
将 strictMode 设置为 false,正如@miqid 所建议的那样,解决了这个 url /fr/about/?arg=1 但不是基础 /fr?arg=1
的问题
故事的结局是 angularjs 团队不会更改当前代码来处理这种情况。他们更愿意依赖 Web 服务器 url 重写功能(在查询字符串之前添加缺少的尾部斜杠)。他们的文档会相应更新。
在 asp.net mvc 站点中使用 Angular 1.5。
我有一个基本标签:
<base href="/fr/">
并且已设置 html5 模式。
网站运行良好。我使用 ui-router...没问题。 但是今天我点击了一个,这是当我尝试浏览到这种 url:
我收到来自 angular 的错误:
url 未定义
如果我导航到 /fr/?arg=1(带有尾部斜杠),错误就会消失。
如果我导航到 /fr/about/?arg=1,它将导航到索引页面但不会触发 "about" 状态。
如何使查询字符串起作用?
更新: 将 strictMode 设置为 false,正如@miqid 所建议的那样,解决了这个 url /fr/about/?arg=1 但不是基础 /fr?arg=1
的问题故事的结局是 angularjs 团队不会更改当前代码来处理这种情况。他们更愿意依赖 Web 服务器 url 重写功能(在查询字符串之前添加缺少的尾部斜杠)。他们的文档会相应更新。