对 Angular UI 路由器使用多个正则表达式参数
Using multiple regexp parameter for Angular UI Router
我正在为我的项目使用 AnglarJs 和 Angular UI Router。我正在为我的路线使用参数,例如:
url: '/content/:categoryId/:categoryType'
但是我在使用网址时遇到了问题:
url: '/content/detail/:contentId'
似乎角度UI路由器无法识别这两者的区别。然后我决定对所有这些使用正则表达式参数
url: '/content/{categoryId:int}/{categoryType:int}'
url: '/content/detail/{contentId:int}'
第二个网址还可以,但是当我使用 ui-sref 时,Angular UI 路由器无法识别第一个网址:
<a ui-sref="firstUrl({categoryId: 1, categoryType: 2})">Anchor</a>
Angular UI 路由器是否只支持一个正则表达式参数?
这里的问题是UI路由器如何查找/解析url
的状态。它使用:
- 国家定义的顺序
- 使用第一个匹配
这实际上是问题所在,因为第一个 url 模式:
url: '/content/{categoryId:int}/{categoryType:int}'
绝对适合为此提供的网址
url: '/content/detail/{contentId:int}'
这些情况下的解决方案相对简单。更改状态定义的顺序。越精确应该先走,越有活力第二
相关文章:
- 对 Angular UI 路由器使用多个正则表达式参数
- 用于查找参数的Javascript中的正则表达式
- 正则表达式或函数,用于提取传递给函数的所有参数
- 与URL参数匹配的正则表达式
- 使用正则表达式删除网址参数
- 基于带有参数的正则表达式生成字符串
- 正则表达式类似于Javascript中的参数函数
- 如何将参数插入正则表达式
- 文件扩展名正则表达式的节点参数
- 正则表达式帮助 - 匹配列表中未列出的任何 URL 参数和值
- 寻找一个正则表达式来解析 JS 的参数字符串
- JavaScript null 参数使正则表达式匹配
- Javascript 正则表达式切断斜杠之间的最后一个参数
- 正则表达式匹配特定的函数调用并使用 javascript 捕获参数
- 如何为长度不确定的参数形成javascript正则表达式
- Regex-正则表达式模式在URL GET参数上失败
- 将 URL 中的参数替换为正则表达式
- 使用正则表达式的Ui路由器路由参数
- JavaScript/node.js将数组转换为正则表达式.匹配if语句的参数
- 使用正则表达式解析URL查询参数