2016-03-15 3 views
0

Я использую тему Metronic AngularJS (click here) и разрабатываю приложение с использованием AngularJS и MVC. Боковая панель, верхний и нижний колонтитулы разделены на разные секции. Мы просто включаем их, используя приведенный ниже код.На основании выбранной страницы показать/скрыть заголовок значок в angularjs

<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'sreply.

+0

показать код с флагом, который вы использовали –

+0

Вот скриншот. http://screencast.com/t/h3V97KFf9cd Я думаю, что это неправильный способ использовать это. –

ответ

0

Я думаю, что есть лучшие способы добиться того, чего вы хотите, но это, вероятно, связано с существенным завершением вашего кода, который может быть не таким, каким вы хотите. Чтобы получить то, что у нас есть сейчас, я бы предложил использовать тройку в data-ng-include, которая, помните, принимает выражение.

Если возможно, попробуйте следующее:

<div data-ng-include="vm.currentLocation === true ? '~/App/common/views/layout/header.cshtml' : null" ...rest of the line 
Смежные вопросы