angular 使用 modernizr 的模块多重依赖

angular module multiple dependancy using modernizr

我正在使用 'Modernizr' 检测移动设备 devices.I 已为移动设备创建 'touchevent.js' 文件

在touchevent.js

`var touchApp = angular.module('ngTouchEvent', [])

在script.js

'var app = angular.module('myApp', [ 'ngTouchEvent' ]);

现在我只想在使用 modernizr 的移动设备上加载 touchevent.js。 我正在使用

Modernizr.load('touchevent.js');

我遇到了类似

的问题

[$injector:modulerr] Failed to instantiate module myApp

除移动设备外。

我不想在 desktop.Can 中加载 touchevent.js 我有多重依赖的解决方案

你可以看看这个项目,它提供了一个基础项目,用于使用 AngularJS 和 RequireJS 来按需加载所需的 js 文件。

https://github.com/tnajdek/angular-requirejs-seed

如果您的应用程序很大,它可能会有用,否则可能会大材小用,因为仅使用 AngularJS 就可以减少要编写的代码量。

希望对您有所帮助

实际上,Modernizr 是一个 javascript 对象,您可以在任何 angular 控制器或指令中直接使用它,而无需指定对 angular 应用程序的任何依赖。您可以像这样创建一个提供程序以在控制器或指令中使用 Modernizr,如下所示:

angular.module('myApp').provider('Modernizr', function() {
    this.$get = function() {
        return Modernizr || {};
    };
});

Modernizr.mq()