I have navbar,sidebar and container. for each item in navbar have different sidebar.
Ex:
- If i click Nav A, it have sidebar A, B, C.
- and if i click Nav B, it have sidebar D, E, F
and for each sidebar have different data in container. anyone know how the logic for make that interface in angularjs.
Asked
Active
Viewed 649 times
-1

catax
- 3
- 1
-
1Let's see an attempt at some code so that we can help you. – lucuma Jul 22 '14 at 18:20
1 Answers
0
It sounds to me like you want to show different content based on which Nav is selected, you can do something like this:
HTML:
<div data-ng-controller="nav-controller">
<ul data-ng-view>
<li data-ng-click="showSidebar('a');">Sidebar A</li>
<li data-ng-click="showSidebar('b');>Sidebar B</li>
</ul>
<ul data-ng-view="sidebar">
{{sidebarContent}}
<ul>
</div>
Javascript inside controller:
$scope.showSidebar = function(name){
if(name == "a"){
$scope.sidebarContent = "someCode for sidebar A";
};
if(name == "b"){
$scope.sidebarContent = "someCode for sidebar B";
};
};
Alternatively you could put the code in it's own template, and use the following:
HTML:
<div data-ng-include="{{sidebarContentUrl}}"></div>
Javascript inside controller:
$scope.showSidebar = function(name){
if(name == "a"){
$scope.sidebarContentUrl = "partials/sidebarA.tpl.html";
};
if(name == "a"){
$scope.sidebarContentUrl = "partials/sidebarB.tpl.html";
};
};
You could also include all the sidebars in one template, and hide them conditionally.

Levi
- 1,552
- 1
- 11
- 10