【发布时间】:2017-07-31 15:31:29
【问题描述】:
我试图让内容在按钮单击时消失,然后在该按钮单击时显示一组新内容。我不能完全让它工作。我评论了每个部分在做什么。第一部分不会在按钮单击时消失。第二部分按预期工作,确实在按钮单击时消失,第三部分不在按钮单击时显示。非常感谢您的帮助,我期待着从中学习!
我认为通过添加一个控制器,它可以一起运行。
HTML
<!-- THIS DOESN'T DISAPPEAR ON BUTTON CLICK -->
<div ng-controller="EventCtrl" ng-hide="eventComplete">
<h2>Example that doesn't disappear on button click</h2>
</div>
<!-- THIS WILL DISAPPEAR ON BUTTON CLICK -->
<div ng-controller="EventCtrl" ng-hide="eventComplete">
<div>
<h2>Example</h2>
<md-button ng-click="eventFinish();">Finish</md-button>
</div>
<!-- THIS DOESN'T SHOW ON BUTTON CLICK -->
<div ng-controller="EventCtrl" ng-show="eventComplete">
<h2>Complete!</h2>
</div>
</div>
角度
.controller('EventCtrl', function($rootScope,$state,$scope,$timeout){
var self = this;
$scope.eventComplete = false;
$scope.eventFinish=function(){
console.log('eventFinish'); //This logs
$scope.eventComplete = true;
};
})
【问题讨论】:
-
您应该将所有的 html 包装在
<div ng-controller="EventCtrl"></div>中,这样您就不必多次添加 ng-controller。
标签: javascript html angularjs controller