加载期间的角度动画错误

时间:2014-03-16 16:15:39

标签: angularjs angularjs-animation

我正在开发这个角度简单的页面。我正在使用Bower来安装我需要的组件,并且应用程序过去非常有效。直到我决定利用Angular动画库。 我第一次使用Bower问我应该使用哪个“合适的”Angular库:1.2.6(已安装和工作)或1.2.14。

因此,如果我选择1.2.6,则在添加

之后出现错误
var mainApp = angular.module('myStopApp', [
  'ngCookies',
  'ngResource',
  'ngSanitize',
  'ngRoute',
  'ngAnimate',
  'myStopModule'
])

  

未捕获错误:[$ injector:unpr]未知提供商:   $$ asyncCallbackProvider< - $$ asyncCallback< - $ animate< - $ compile

如果我选择其他版本,问题会转移到似乎无法识别使用ng-class的代码中。

我有一个ng-class =“testClass”的元素 和我有的列表元素:

ng-click="selectStop(stop); testClass='stop-active'"

我在animations.css中的位置:

.stop-active-add, .stop-active-remove {
  -webkit-transition:all linear 0.5s;
  -moz-transition:all linear 0.5s;
  -o-transition:all linear 0.5s;
  transition:all linear 0.5s;
  display:block!important;
}

.stop-active-add.add-active,
.stop-active-remove {
  opacity:0;
}

.stop-active-add,
.stop-active-remove.-remove-active {
  opacity:1;
}

加载页面时出错:

[$parse:syntax] Syntax Error: Token '=' implies assignment but [selectStop(stop); testClass] can not be assigned to...

似乎第一个函数和角度的css钩子的使用不能在同一个ng-click中一起使用。

我能解决两个问题中的至少一个问题:)?..

1 个答案:

答案 0 :(得分:0)

Angular似乎改变了它们允许您在单击处理程序的表达式中执行的操作。为什么不把赋值语句放在你已经在click处理程序中调用的函数中?

ng-click="selectStop(stop)"

然后在selectStop()函数中:

$scope.selectStop = function(arg) {
    testClass = 'stop-active';
    ...
}