基于选中的页面显示/隐藏angularjs中的标题徽章

时间:2016-03-15 17:53:29

标签: javascript jquery html css angularjs

我正在使用Metronic AngularJS主题(click here)并使用AngularJS和MVC开发应用程序。侧边栏,页眉和页脚分为不同的部分。我们只是使用以下代码包含它们。

<div data-ng-include="'~/App/common/views/layout/header.cshtml'" data-ng-controller="common.views.layout.header as vm" class="page-header navbar navbar-fixed-top md-shadow-zero-light">

在标题中,我们有一个徽章,我们要为其他页面显示而不是仪表板。当用户打开仪表板时,它应该隐藏,而对于其他人应该显示。 我试图使用标志解决此问题,此标志在标头控制器下定义。

我的问题是,当我们在页面之间导航时,它不会再次调用标题控制器。它正在调用并加载一次。

任何人都可以帮助我,我如何解决这个问题?

已解决的问题:

我使用下面的代码解决了我的问题。

<li data-ng-show="$state.includes('incentives')" class="dropdown dropdown-quick-sidebar-toggler">

app.run(function($state, $rootScope){

$ rootScope。$ state = $ state; });

我在Pankaj Parker's reply的帮助下解决了我的问题。

1 个答案:

答案 0 :(得分:0)

我认为有更好的方法可以实现您想要的功能,但这可能会在您的代码中出现重大的重构,这可能不是您想要的。为了得到我们现在的工作,我建议在data-ng-include中使用三元组,记住,接受一个表达式。

如果可能的话,试试这个:

<div data-ng-include="vm.currentLocation === true ? '~/App/common/views/layout/header.cshtml' : null" ...rest of the line