【发布时间】:2014-10-18 12:45:06
【问题描述】:
我已将“ngAnimate”作为我的 ngApp 的依赖项。
现在在一个 jQuery 文件中,我正在尝试使用:
angular.injector(['ng', 'angular-sm']).invoke(['$compile', '$timeout' ,function ($compile, $timeout) {
但这给了我一个错误
Error: $injector:unpr
Unknown Provider
Unknown provider: $rootElementProvider <- $rootElement <- $animate <- $compile
然后我将其更改为:
angular.injector(['ng','ngAnimate', 'angular-sm']).invoke(['$compile', '$timeout' ,function ($compile, $timeout) {
angular.injector(['ng','ngAnimate', 'angular-sm']).invoke(['$animate','$compile', '$timeout' ,function ($animate,$compile, $timeout) {
这些也没有用。
然后我尝试了:
var app_element = document.querySelector('[ng-app=angular-sm]');
angular.element(app_element).injector().invoke(['$compile', '$timeout' ,function($compile,$timeout) {
即我使用了定义的 ngApp 的注入器并且它工作了。为什么会这样?
【问题讨论】:
标签: angularjs ng-animate angularjs-injector