Javascript 将多个库注入到数据库时出错
当使用Javascript 将多个库注入到数据库时出错,javascript,angularjs,angular-ngmodel,ng-class,Javascript,Angularjs,Angular Ngmodel,Ng Class,当使用ng class与三元运算符之一时,我遇到了一个奇怪的冲突: {{showDebug} {{showDebug}} 鉴于这两种方法各自都能很好地发挥作用: {{showDebug} {{showDebug}} 我收到以下错误消息: TypeError:未定义不是函数 在最新的课堂上(https://code.angularjs.org/1.2.20/angular.js:18307:22) at Object.ngClassWatchAction[作为fn](https://code.
ng class
与三元运算符之一时,我遇到了一个奇怪的冲突:
{{showDebug}
{{showDebug}}
鉴于这两种方法各自都能很好地发挥作用:
{{showDebug}
{{showDebug}}
我收到以下错误消息:
TypeError:未定义不是函数
在最新的课堂上(https://code.angularjs.org/1.2.20/angular.js:18307:22)
at Object.ngClassWatchAction[作为fn](https://code.angularjs.org/1.2.20/angular.js:18318:15)
在范围内。$get.Scope。$digest(https://code.angularjs.org/1.2.20/angular.js:12447:29)
范围为$get.Scope.$apply(https://code.angularjs.org/1.2.20/angular.js:12712:24)
在HTMLanchoreElement。
单击调试链接。上面的调试语句应该改变颜色
奇怪的是,这似乎与我如何初始化模块和控制器有关。我同时使用和
这会起作用,但不会带来烤面包机:
var-app=angular.module('plunker',['ui.bootstrap']);
应用程序控制器('MainCtrl',函数($scope){
$scope.showDebug=true;
});
这不起作用:
var-app=angular.module('plunker',['ui.bootstrap','toaster']);
应用控制器('MainCtrl',函数($scope,toaster){
$scope.showDebug=true;
});
我也尝试将烤面包机直接注入控制器本身,但仍然无法解决任何冲突:
var-app=angular.module('plunker',['ui.bootstrap','toaster']);
应用控制器('MainCtrl',['$scope','toaster',函数($scope,toaster){
$scope.showDebug=true;
}]);
我花了一段时间才把这些组件隔离开来,但现在我被卡住了。有什么想法吗?您使用的angular版本与ngAnimate
或toaster
似乎存在不兼容问题
如果您回滚到版本1.2.12
,错误将消失
我会查看这两个版本的最新版本,或者查看github问题跟踪程序中的toaster
更新:在我写这篇文章后意识到使用的ngAnimate
版本比angular core低很多
您正在使用的angular版本的ngAnimate
或toaster
似乎存在不兼容问题
如果您回滚到版本1.2.12
,错误将消失
我会查看这两个版本的最新版本,或者查看github问题跟踪程序中的toaster
更新:在我写这篇文章后意识到使用的ngAnimate
版本比angular core低很多
如果使用Firefox开发者工具栏,您可以看到实际错误:
Error: $animate.setClass is not a function
updateClasses@https://code.angularjs.org/1.2.20/angular.js:18307:13
ngClassWatchAction@https://code.angularjs.org/1.2.20/angular.js:18318:15
$RootScopeProvider/this.$get</Scope.prototype.$digest@https://code.angularjs.org/1.2.20/angular.js:12447:23
$RootScopeProvider/this.$get</Scope.prototype.$apply@https://code.angularjs.org/1.2.20/angular.js:12712:13
ngEventHandler/<@https://code.angularjs.org/1.2.20/angular.js:18980:15
createEventHandler/eventHandler/<@https://code.angularjs.org/1.2.20/angular.js:2823:7
forEach@https://code.angularjs.org/1.2.20/angular.js:325:7
createEventHandler/eventHandler@https://code.angularjs.org/1.2.20/angular.js:2822:5
如果使用Firefox开发者工具栏,您可以看到实际错误:
Error: $animate.setClass is not a function
updateClasses@https://code.angularjs.org/1.2.20/angular.js:18307:13
ngClassWatchAction@https://code.angularjs.org/1.2.20/angular.js:18318:15
$RootScopeProvider/this.$get</Scope.prototype.$digest@https://code.angularjs.org/1.2.20/angular.js:12447:23
$RootScopeProvider/this.$get</Scope.prototype.$apply@https://code.angularjs.org/1.2.20/angular.js:12712:13
ngEventHandler/<@https://code.angularjs.org/1.2.20/angular.js:18980:15
createEventHandler/eventHandler/<@https://code.angularjs.org/1.2.20/angular.js:2823:7
forEach@https://code.angularjs.org/1.2.20/angular.js:325:7
createEventHandler/eventHandler@https://code.angularjs.org/1.2.20/angular.js:2822:5