绑定到子范围的属性

时间:2016-06-14 09:42:16

标签: angularjs scope

我有一个使用Angular Router的角度应用程序。

我的主视图是一个标签视图,其中定义了10个标签。对于每个选项卡,都有一个命名视图,用于将模板注入的角度路由器。除了通过状态定义配置的标头之外,每个标签对其内容一无所知。

state('personView', {
            route: "people/:personId/",
            views: {
                   "tab1": {
                          tabConfig: {
                             name: 'tab1',
                             icon: 'info_outline'
                          }
                          template: "person-details.tpl",
                          controller: 'personDetailsController as vm'
                    },
                    "tab2": {
                          tabConfig: {
                             name: 'tab2',
                             icon: 'info_outline'
                          }
                          template: "children-details.tpl",
                          controller: 'childrenDetailsController as vm'
                    }
                }})

我想要做的是在标签页眉中包含一个计数器,用于显示每个标签内有多少项目。使用上面的例子,如果有4个孩子,我希望标签标题显示数字4作为徽章。但孩子们的知识就是那些孩子的详细信息,而且仅仅是那个。

那么如何最好地将计数添加到选项卡式标题中而不给我的childrenDetailsController知道它在选项卡式模板中使用?理想情况下,我会将选项卡式视图配置为“查看”childDetailsController并提取某个属性,该属性可用于计数器。但绑定到子范围并不是我所熟悉的。

1 个答案:

答案 0 :(得分:1)

$state.get() 

get(stateName) - 通过将名称作为字符串传递来检索任何状态的配置对象的方法。

get() - 返回所有状态配置对象的数组。

$state.current