ui-router状态与/发生冲突

时间:2016-05-20 19:52:03

标签: javascript angularjs angular-ui-router

基本上,

州1:

 myurl.com/:id/:other

州2:

 myurl.com/:id

到目前为止一切都很好......但如果我们这样做:

myurl.com/:id/

状态将查找状态1:其他缺少参数而不是状态2.

蚂蚁想法?

更新

$urlMatcherFactoryProvider.strictMode(false);

如果您有查询参数,则无效;这意味着:

myurl.com/:id/:product

你删除了/:产品我将获取空值。

$urlRouterProvider.rule(function($injector, $location) {

    var path = $location.path();
    var hasTrailingSlash = path[path.length-1] === '/';

    if(hasTrailingSlash) {

      //if last charcter is a slash, return the same url without the slash  
      var newPath = path.substr(0, path.length - 1); 
      return newPath; 
    } 

  });

有点做这项工作,但是如果你删除最后的通配符并尝试进入内部水平,它将保持在较高水平。

0 个答案:

没有答案