ui-router默认stateParam

时间:2015-11-11 16:51:48

标签: angularjs angular-ui-router

我的状态定义如下:

.state('dashboard.poor-calls', {
    url: '/voice-quality/{callType}/{categoryTypeId}/{:categoryEntityId}/?{:tableView}',
    template: '<poor-calls></poor-calls>',
    reloadOnSearch: false
})

请注意categoryEntityId是可选的。

如果categoryEntityId定义中没有提供state()的默认值,或者<poor-calls>指令的控制器是否必须检查是否缺少categoryEntityId并假设默认值?

1 个答案:

答案 0 :(得分:2)

是的,我们可以使用 params : {} 配置属性:

.state('dashboard.poor-calls', {
    url: '/voice-quality/{callType}/{categoryTypeId}/{:categoryEntityId}/?{:tableView}',
    params: {categoryEntityId: 1}
    template: '<poor-calls></poor-calls>',
    reloadOnSearch: false
})

我们甚至可以设置如果提供默认值该怎么做,例如从url (壁球setting跳过它:

params: { 
   categoryEntityId: {
      value: 1,
      squash: false,
   },
},

请在此处查看所有详细信息:

Angular ui router passing data between states without URL

How to pass parameters using ui-sref in ui-router to controller