2015-10-19 40 views
0

我想添加三個基於routeProvider的附加列表項。如果報告路線導航到,我想使用ng-show使另外三個列表項目可見。我希望它們保持可見,除非創建用戶或管理用戶路線被導航到。新的列表項目是訪問報告和詳細信息報告。顯示基於當前角路由的HTML元素

HTML:

<ul class="nav nav-pills nav-stacked"> 
    <li> 
     <a href="#createUser"> Create User</a> 
    </li> 
    <li> 
     <a href="#manageUsers"> Manage Users</a> 
    </li> 
    <li> 
     <a href="#reports"> Reports</a> 
    </li> 
</ul> 

routeProvider.js

adminApp.config(function($routeProvider) { 
$routeProvider 

    .when('/createUser', { 
     templateUrl : 'app/components/admin/views/createUserView.html', 
     controller : 'createUserController' 
    }) 

    .when('/manageUsers', { 
     templateUrl : 'app/components/admin/views/manageUsersView.html', 
     controller : 'manageUsersController' 
    }) 

    .when('/editUser', { 
     templateUrl : 'app/components/admin/views/editUserView.html', 
     controller : 'manageUsersController' 
    }) 

    .when('/reports', { 
     templateUrl : 'app/components/admin/views/reportsView.html', 
     controller : 'reportsController' 
    }) 

    .when('/reports', { 
     templateUrl : 'app/components/admin/views/accessReportsView.html', 
     controller : 'reportsController' 
    }) 

    .when('/reports', { 
     templateUrl : 'app/components/admin/views/detailsReportView.html', 
     controller : 'reportsController' 
    }) 

我試圖做這樣的事情:

<ul class="nav nav-pills nav-stacked"> 
    <li> 
     <a href="#createUser"> Create User</a> 
    </li> 
    <li> 
     <a href="#manageUsers"> Manage Users</a> 
    </li> 
    <li> 
     <a href="#reports"> Reports</a> 
    </li> 
    <!--show this list item if the route is /reportsView or /accessReportsView orsummaryReportsView--> 
    <li> 
     <a ng-show="" href="#reports"> Access Reports</a> 
    </li> 

</ul> 

Link git repo if needed

+1

查找到[$位置(https://docs.angularjs.org/api/ng/service/$location),它可以給你目前的路徑,並可用於基於路徑將項目添加/刪除到陣列。有很多方法可以做到這一點。 – GillesC

回答

0

好像按您當前的配置,你應該在你的錨​​href屬性

<ul class="nav nav-pills nav-stacked"> 
    <li> 
     <a href="#/createUser"> Create User</a> 
    </li> 
    <li> 
     <a href="#/manageUsers"> Manage Users</a> 
    </li> 
    <li> 
     <a href="#/reports"> Reports</a> 
    </li> 
</ul> 
+0

我不確定你的意思。你能進一步解釋嗎? – WesW

+0

表示點擊時您的網址不起作用,但它不會回答您如何根據所選路線顯示某些項目的問題。 – GillesC