微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 具有可选参数的app状态,没有尾部斜杠

.state('tabs.map',{
    url:'/map/{location_id}',params: {
      location_id: { value: -1 }
    },views: {
      'map-tab':{
        templateUrl:'templates/map.html',controller:'MapCtrl'
      }
    }
  })

我已经在网上找到了一些可选参数的不同选项,但它们都没有像我正在寻找的那样工作.我添加代码允许:

> /tab/map/.*?
> / tab / map /

但不是

> / tab / map

我不确定为什么尾随斜线导致问题,因为from what I’ve read它应该不是问题.有谁知道如何解决这个问题?

最近咨询过

> Angular UI-Router: Multiple URLs to single state
> AngularJs UI router – one state with multiple URLs
> Can angularjs routes have optional parameter values?
> Laravel 4 Route issues with multiple and optional get params

将壁球引入param变量

.state('tabs.map',{
    url:'/map/:location_id',params: {
      location_id: { value:null,squash:true }
    },controller:'MapCtrl'
      }
    }
  })

解决方法

您可以使用squash参数来允许不使用尾部斜杠

params: {
      location_id: {
        value: null,squash: true
      }
   }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐