$ urlRouterProvider when()匹配URL中的任何slug?

时间:2016-09-09 21:15:34

标签: angularjs angular-ui-router url-routing

我正在尝试使用$ urlRouterProvider的when函数进入特定状态。

我希望匹配的模式是直接在基本URL之后的任何名称的slug。像这样:

http://baseurl.com/any-slug-name

以下是我的尝试:

我首先对此进行了测试,看它是否按预期工作:

myApp.config(function($urlRouterProvider, $locationProvider, $stateProvider) {

$locationProvider.html5Mode(true);

$urlRouterProvider
 .when('/shoe', ['$state', function ($state) {
        $state.go(‘foot');
  }])
 .otherwise('/');

 .state('foot', {
      url: '/foot',
      ...
  })
 });

确实如此。但我想要的是:

$urlRouterProvider
     .when(‘/Any-Slug-On-Base-Url', ['$state',function ($state) {
             $state.go(’theState');
     }])
     .otherwise('/');

      .state('theState', {
           url: '/theState',
           ...
      })
 });

我怎样才能做到这一点?

我觉得我会在what参数中使用正则表达式实现我想要的但不确定如何实现它。

0 个答案:

没有答案