编程语言
首页 > 编程语言> > javascript – 如何在角度ui-router状态下添加guid正则表达式

javascript – 如何在角度ui-router状态下添加guid正则表达式

作者:互联网

我有这条路

.state('mystate', {
    url: '/{id}',
    templateUrl: '/views/partial.html'
});

id param应该是像这样的“2a542f61-5fff-4607-845d-972e6c3ad1e4”形式的guid.
我如何在网址“url:’/ {id:?我应该放在这里}}”中添加这个.

解决方法:

您可以定义自己的参数类型.

var GUID_REGEXP = /^[a-f\d]{8}-([a-f\d]{4}-){3}[a-f\d]{12}$/i;
$urlMatcherFactoryProvider.type('guid', {
  encode: angular.identity,
  decode: angular.identity,
  is: function(item) {
     return GUID_REGEXP.test(item);
  }
});

这个解决方案是一个showcase上的plunker

然后在url route表达式中指定此类型:

.state('mystate', {
  url: '/{id?guid}',
  templateUrl: '/views/partial.html'
});

您可以在文档中阅读更多关于that page的内容

标签:javascript,angularjs,angular-ui-router,angular-ui
来源: https://codeday.me/bug/20191006/1859641.html