标题隐藏在我的角度中的特定页面

时间:2015-11-03 06:51:29

标签: javascript angularjs angular-ui-router angularjs-routing

我正在开展角度项目,我的需求只是登录页面上的隐藏标题块。我试图在登录页面上隐藏标题。但它仍然不适合我。你有没有人帮我隐藏登录状态。

这里是我的索引html

<div ng-include src="'views/header.html'"  ng-hide="$state.current.name === 'login'"></div>

    <div class="">
      <div ui-view></div>
    </div>

这是我的app.js

var app = angular.module('Qapp', ["ui.router", "ngRoute"])

app.config(function($stateProvider, $urlRouterProvider) {

    //$urlRouterProvider.when('/dam', '/dam/overview');
    $urlRouterProvider.otherwise('/login');

    $stateProvider
      .state('base', {
        abstract: true,
        url: '',
        templateUrl: 'views/base.html'
      })
        .state('login', {
          url: '/login',
          parent: 'base',
          templateUrl: 'views/login.html',
          controller: 'LogCt'
        })
        .state('dam', {
          url: '/dam',
          parent: 'base',
          templateUrl: 'views/dam.html',
          controller: 'DamCt'
        })


  });

1 个答案:

答案 0 :(得分:5)

您无法直接在HTML上访问$state对象。要访问它,您应该将$state对象与$scope / $rootScope放在一起,您可以在run阻止/ controller&amp;使用$state.includes代替$state.current.name

<强>标记

<div ng-include src="'views/header.html'"  ng-hide="$state.includes('login')">
</div>

<强>代码

app.run(function($state, $rootScope){
   $rootScope.$state = $state;
})