我有一个index.html页面,其中包含我整个网站的常用模板,使用angular我的指定页面将插入以下标记中:
<data id="mainView"></data>
我的index.html在body标签中有一个属性,如下所示:
<body myAttribute="teal">
我想要这个&#39; myAttribute&#39;要在mainView标记中加载特定页面(login.html)时删除。我如何实现相同的???
以下是我的申请的州提供者
stateProvider.state('login',{
url: '/login',
templateUrl : 'login.html',
controller: 'myController'
})
答案 0 :(得分:1)
您可以使用onEnter
&amp; onExit
状态定义的挂钩,从那里添加和删除属性。如果你想为单一状态做这件事。
stateProvider.state('login',{
url: '/login',
templateUrl : 'login.html',
controller: 'myController',
onEnter: ['$document', function($document){
angular.element($document).find('body').removeAttr('myAttribute');
}],
onExit: ['$document', function($document){
angular.element($document).find('body').attr('myAttribute', teal);
}]
})