繁体   English   中英

访问自定义数据中的参数

[英]Accessing parameters in custom data

我正在使用自定义数据将易读的名称添加到我的州,如下所示:

.state('data', {
  parent: 'week',
  url: '/data',
  displayName: 'Data Overview',

然后,我可以在模板中使用它,如下所示:

<h1>Showing {{$state.current.displayName}}</h1>

很好 但是现在我想创建一个带有参数的路由,并在displayName中使用该参数:

.state('upload', {
  parent: 'week',
  url: '/upload/:level',
  displayName: 'Data Upload for ' + level,
  ...

但是我无法找出正确的语法来使用displayName内部的level值。

static数据(建议放置在data : {}内部data : {} -不要直接放在根状态设置上) -是静态数据。 所以:

没有办法如何动态地设置这些数据。 例如基于$stateParams 这些设置应该在.config()阶段中定义,而不是在.run()进行评估(与resolve,templateUrl等其他模型进行比较)

参见文档:

将自定义数据附加到状态对象

您可以将自定义数据附加到状态对象(我们建议使用data属性以避免冲突)。

 // Example shows an object-based state and a string-based state var contacts = { name: 'contacts', templateUrl: 'contacts.html', data: { customData1: 5, customData2: "blue" } } $stateProvider .state(contacts) .state('contacts.list', { templateUrl: 'contacts.list.html', data: { customData1: 44, customData2: "red" } }) 

通过上面的示例状态,您可以像这样访问数据:

 function Ctrl($state){ console.log($state.current.data.customData1) // outputs 5; console.log($state.current.data.customData2) // outputs "blue"; } 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM