Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在某些页面中从Angular layout.html隐藏元素_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 如何在某些页面中从Angular layout.html隐藏元素

Javascript 如何在某些页面中从Angular layout.html隐藏元素,javascript,html,angularjs,Javascript,Html,Angularjs,因此,我使用ui router和index.html作为布局,其中我有一个div,它将附加其他页面,例如: 我有一个HTML,它是我的layout.HTML: <html ng-app="myApp"> <head> <title> My layout.html </title> </head> <body> <nav> I have this NAVBAR </nav>

因此,我使用ui router和index.html作为布局,其中我有一个div,它将附加其他页面,例如:

我有一个HTML,它是我的layout.HTML:

<html ng-app="myApp">
 <head>
   <title> My layout.html </title>
 </head>
 <body>
  <nav>
    I have this NAVBAR
  </nav>
  <div ui-view></div> 
 </body>
</html>

My layout.html
我有这个导航条
因此,如果我访问“posts”页面,Angular将在

没什么不寻常的,对吧


问题是。。我有一个404.html模板文件,我不想显示导航栏。如果页面是404.html,是否可以关闭或隐藏导航栏?

我将为导航部分创建一个控制器

.controller('NavCtrl', function($scope, $state) {
    $scope.$state = $state;
})
然后在当前状态为404时隐藏导航:

<nav ng-controller="NavCtrl" ng-hide="$state.current.name == '404'">
    I have this NAVBAR
</nav>

我有这个导航条

如果只有一个页面需要隐藏导航栏,则此操作非常有效。如果其中有几个这样做,我会创建多个模板,一个用于带有navbar的页面,另一个用于带有navbar.not working的页面。。侧边栏没有隐藏,你能更好地解释一下吗。。我试图找出,$state.current.name始终是navcontroller,如果我使用ng控制器,它将起作用。