Angular ui-路由器 Url 本地化

Angular ui-router Url localized

我想像这样在 URL 中进行本地化:

http://example.com/de -> get German locale (DE)

http://example.com/it -> get Italian locale (IT)

所以我做了这样一条抽象路线:

state('root', {
  abstract: true,
  url: '/{lang:(?:de|it)}',
});

家里的是这样的:

state('root.home', {
  url: '',
});

它工作正常,但现在默认根 http://example.com/ 不再工作了。 我需要 url: '/' 像其他人一样工作

然后手动执行,但它看起来很笨拙。

.state('root', {
  abstract: true,
  url: '/{lang:(?:de|it)}',
  params: {
     lang: null
  },
  controller: function($stateParams, $state){
    if(!$stateParams.lang){
      $state.go('.home')
    }
  }
});