2016-10-18 5 views
0

Я использовал ng-include для добавления html. В включенный html у меня есть панель боковой навигации. Эта боковая навигация включает я хочу показать в одном html, а не во втором html, как я могу это сделать?Как скрыть и показать панель навигации в AngularJs?

MY включают

<div ng-include src="'template/includeGallery.html'" id="angularGallery" ng-controller="galleryCtrl as vm" 
       ng-show="vm.showGallery" resize> 
</div> 

includeGallery.html в

<div class="gallery"> 
       <div class="close" ng-click="vm.closeGallery()"> 
        <img src="../images/closeimage.png" class="close-img"> 
       </div> 
       <!-- Gallery start --> 

       <div ng-include src="'view/sidepanel.html'"> 
      </div> 
</div> 

В коде выше я хочу показать ng-include src="'view/sidepanel.html'"> в одном HTML-страницы и я не хочу, хочу показать во втором HTML оба имеют другой контроллер.

Оба html имеют разные контроллеры.

+0

какой маршрутизатор вы используете? –

+0

Я использую $ routeProvider. –

+0

Я думаю, что это неправильный способ сделать это. –

ответ

0

Вы должны использовать нг-шоу здесь: переменная

Initialize один статус от контроллера, чтобы гарантировать, что вы хотите, чтобы показать или нет.

$scope.status = true; 

Затем на ваш взгляд:

<div ng-show="status" ng-include src="'template/includeGallery.html'" id="angularGallery" ng-controller="galleryCtrl as vm" 
       ng-show="vm.showGallery" resize> 
</div> 
+0

Я уже делал, но проблема в ng-include src = "'template/includeGallery.html'" имеет еще один включенный html, который я хочу скрыть во втором html, который имеет другой контроллер. –

+0

Итак, попробуйте это на секунду, иначе вы можете использовать ng-if. – Jigar7521

0

В контроллере, где вы не хотите включать в файл, взять flag, сделать это верно и добавить ng-if состояние, при котором вы в том числе частичное ,

app.controller('myController', ['$scope', 
    function($scope) { 

    vm.to_display = true; 

    } 

]) 

includeGallery.html в

<div class="gallery"> 
       <div class="close" ng-click="vm.closeGallery()"> 
        <img src="../images/closeimage.png" class="close-img"> 
       </div> 
       <!-- Gallery start --> 

       <div ng-if = "vm.to_display" ng-include src="'view/sidepanel.html'"> 
      </div> 
</div> 
+0

@ Онкареш Гали, это сработало? – Sravan

+0

не работает. –

+0

ok у вас есть 'controller-as', change' vm.to_display = true', in view, 'ng-if =" vm.to_display "' – Sravan

Смежные вопросы