有条件地加载ng-animate模块?

时间:2016-06-16 18:40:51

标签: javascript angularjs animation ng-animate

我们正在使用Angular 1.4.9 ng-animate模块。一切正常,但我们的一些团队要求根据条件不加载。

例如,在特定平台或用户代理上,没有ng-animate加载。

我们已经有几种方法可以测试这个(egmodernizr)并使用它们有条件地加载其他.js和.css文件,但由于ng-animate是一个模块,只是排除其js文件会引发错误。 / p>

1 个答案:

答案 0 :(得分:0)

如果您手动引导应用程序,实际上非常简单。

将您的依赖项保存在全局变量中:

window.myApplicationMeta = {
  dependencies: [j]
};

定义模块时使用此选项:

angular.module('myApp', applicationMeta.dependencies)

在引导应用程序之前修改依赖项:

angular.element(document).ready(function() {

  var condition = true;

  if (condition) applicationMeta.dependencies.push('ngAnimate');

  angular.bootstrap(document, ['myApp']); 
});