如果我在某些地方,我想隐藏导航栏。 A有索引页面:
<navbar ng-show="showNavbar"></navbar>
<div ng-view></div>
使用js:
scope.showNavbar=(window.location.hash == '#/login');
我试图将位置检查器放到mainCtrl中,但是,它并没有检查位置一次。 之后,我进入了goClick指令
.directive( 'goClick', function ( $location) {
return function ( scope, element, attrs ) {
var path;
attrs.$observe( 'goClick', function (val) {
path = val;
});
scope.showNavbar=(window.location.hash == '#/login');
element.bind( 'click', function () {
scope.$apply( function () {
$location.path( path );
});
});
};
});
它检查了它,但是既不能传递html页面也不能传递Ctrl。
答案 0 :(得分:1)
更改
<navbar ng-show="showNavbar"></navbar>
到
<navbar ng-show="showNavbar()"></navbar>
和控制器
scope.showNavbar = function(){
if($location.path() =='/login'){
return true;
}else{
return false;
}
}