在我的应用中,我想完全匹配url
。如果url
没有完全匹配,我需要重定向到defualt为'`。
目前我要求测试:
localhost:3000/sn=1234 or localhost:3000/sn=abc123 or localhost:3000/sn=abc123
这意味着sn=
与values
的关系应该最少,无论是数字还是字母或两者都混合。
目前我的state
看起来像这样:
.state('serialCreateCase', {
url: '^/sn={serialNumber}',
templateUrl:'app/createCase/create-case.html',
controller: 'createCaseController as ctrl'
})
但它适用于:localhost:3000/sn=, localhost:300/sn
- 如何防止这种情况?并匹配所需的值?
提前致谢。
答案 0 :(得分:1)
您可以对state参数使用正则表达式限定符。例如
url: '/sn={serialNumber:[a-z0-9]+}'
请参阅https://ui-router.github.io/docs/0.3.1/#/api/ui.router.util.type:UrlMatcher
注意:我删除了您在网址上的^
前缀。我见过的文档都没有支持这种格式。