我的控制器中有一个注册功能:
$scope.register = function() {
User.register($scope.user)
.success(function(data) {
if(data.success) {
$scope.stage = false;
} else {
$scope.message = true;
}
});
}
然后我有这个HTML:
<div class="form-group" ng-class="{ hidden: stage }">
<label for="token">Confirmation Token</label>
<input type="text" class="form-control" placeholder="Enter the token sent to your phone" ng-model="user.token" required>
</div>
通常在jQuery中,我会通过删除data.success
隐藏的类来更新DOM。在这里,我使用ng-class
有条件地应用或删除了一个类,但似乎它没有用。
我希望默认情况下该类在那里,然后希望在data.success
我在这里做错了什么?
答案 0 :(得分:0)
如果你想要应用这个类,你需要在你的控制器中设置一个阶段值。
$scope.stage = true;
User.register($scope.user)
...
如果你所有的目标都是显示/隐藏元素,你可以使用ng-show或ng-hide代替ng-class(但是你仍然需要将stage设置为true ):
<div class="form-group" ng-show="stage">
答案 1 :(得分:0)
尝试这样的事情:
<div class="form-group" ng-class="{true: 'hidden'}[stage]">