【发布时间】:2018-06-21 18:41:46
【问题描述】:
我是 Angular 的新手,还在学习。我已经创建了“header.html”文件,并使用“ng-include”将它包含在我的其他 html 文件中。在我的“header.html”中,我有一个导航栏,我希望导航栏链接与活动页面处于活动状态。我很努力,但仍然无法完成。非常感谢有人能帮我解决这个问题。谢谢。
header.html
<body ng-app="headerModule">
<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavAltMarkup" ng-controller="headerContr">
<div class="navbar-nav">
<a class="nav-item nav-link ng-class:{ active: isActive('/index.html')};" href="./index.html"><span class="fa fa-home fa-lg"></span> Home</span></a>
<a class="nav-item nav-link ng-class:{ active: isActive('/aboutus.html')};" href="./aboutus.html"><span class="fa fa-info fa-lg"></span> About Us</a>
<a class="nav-item nav-link ng-class:{active: isActive('/contactus.html')};" href="./contactus.html"><span class="fa fa-address-book fa-lg"></span> Contact us</a>
</div>
</div>
</nav>
<header class="jumbotron jumbotron-fluid">
<div class="container fluid">
<div class="row">
</div>
</div>
</header>
app.js
var angApp = angular.module('angApp', []);
var headerModule = angular.module('headerModule', []);
headerModule.controller('headerContr', ['$scope', '$location', function($scope, $location){
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
}]);
【问题讨论】:
-
我解决了这个问题,我为我的“header.html”和其他html页面使用了两个不同的角度模块。当我使用相同的模块时,它起作用了。再次感谢所有回答我的人。
标签: angularjs ng-class angularjs-ng-include