ngAnimateSwap-使用布尔表达式不会按预期设置动画
ngAnimateSwap - using boolean expression does not animate as expected
我修改了原始的ngAnimateSwap示例,该示例位于此处的文档输入链接描述中,使用布尔表达式而不是整数来触发幻灯片动画。
我希望横幅在"true"answers"false"之间旋转,但是,只有"true"出现,而"false"没有。从角度文档来看:"ngAnimateSwap是一个面向动画的指令,它允许在关联表达式发生变化时移除容器并将其输入。"所以我本以为在true和false之间的变化会导致容器动画化。
在html:中
<div class="container" ng-controller="AppCtrl">
<div ng-animate-swap="abool" class="cell swap-animation" ng-class="colorClass(abool)">
{{ abool }}
</div>
</div>
在控制器中:
$scope.abool = false;
$interval(function() {
$scope.abool = !$scope.abool
}, 1000);
$scope.colorClass = function(abool) {
return abool ? 'red' : 'blue';
};
下面是显示示例的plunkr:http://plnkr.co/edit/iKE5BekgpxOqX1YE952Z?p=preview
作为另一个测试,如果您更新到我的plunkr,将abool
更改为在1和-1之间切换,那么动画看起来就像预期的那样——在1和+1之间滑动。
当您将abool
设置为布尔值false
时,angular认为您不想对{{abool}}
进行插值。
对于您想要实现的目标,您需要布尔值的字符串值。
var abool = false;
$interval(function() {
abool = !abool;
$scope.abool = abool.toString();
$scope.colorClass = abool ? 'red' : 'blue';
}, 1000);
此外,您不需要使用ng-class
。一个简单的插值就可以了:
<div ng-animate-swap="abool" class="cell swap-animation {{colorClass}}">
{{ abool }}
</div>
正在工作的plunker。
相关文章:
- 设置动画时,SVG/Raphael大圆圈会变形
- jQuery animate()函数没有't设置动画
- 对象获胜'如果qml中的其他地方定义了数字动画属性,则t设置动画
- 如何在NativeScript中从列表中删除项目时设置动画
- angularjs路线过渡如何以交互方式设置动画
- 如何通过justinaguilar.com设置动画延迟?[解决]
- 当滚动条到达容器底部时设置动画
- 设置动画时jQuery停止侦听事件
- jQuery在模糊时设置动画-但仅当模糊超出形式时
- Reactjs在不使用插件的情况下为离开组件设置动画
- 在要设置动画的所有方法之间进行选择
- ng设置动画以创建slideIn/slideOut过渡
- 设置动画/移动putImageData放置的画布图像
- TweenSite不设置动画
- 使用jquery为html元素文本的每个字符设置动画
- 如何使用ngAnimate在CSS类之间设置动画
- 为已设置动画的元素设置动画
- scrollTop按钮没有't设置动画
- 可以使用jQuery'移动HTML背景吗;s设置动画
- 仅为父对象的填充设置动画