我在我的新服务中使用了 angularjs、underscore 和 jQuery:
myModule.factory('MyService', ['MyResource', function (MyResource) {
....
// Here I make use of _ and $
}]);
如何将下划线或 jQuery 注入(inject)到新服务中,以便确定 _ 是下划线而 $ 是 jquery?
我正在寻找类似的东西:
myModule.factory('MyService', [ 'underscore', 'jquery','MyResource', function (_, $, MyResource) {
....
// Here I want to use $ and _ and be SURE that _ is underscore and $ is jquery
}]);
最佳答案
基于@moderndegree 的方法,我实现了以下代码,我不能说它是完美的,但通过这种方式测试人员可以知道它是否具有 jQuery 依赖性,因为 $window
是太通用的对象而无法注入(inject)。
'use strict';
(function () {
var app= angular.module('app');
//these are just references the instance of related lib so we can inject them to the controllers/services in an angular way.
app.factory('jQuery', [
'$window',
function ($window) {
return $window.jQuery;
}
]);
app.factory('Modernizr', [
'$window',
function ($window) {
return $window.Modernizr;
}
]);
app.factory('Highcharts', [
'$window',
function ($window) {
return $window.Highcharts;
}
]);
})();
关于javascript - 将jquery和下划线注入(inject)angular js组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17408977/