我有以下工厂可以在我的控制器中注入moment.js:
angular.module("app").factory("moment", moment);
moment.$inject = ["$window"];
function moment($window) {
return $window.moment;
}
然后我尝试了以下内容:
(function () {
"use strict";
angular.module("app").controller("ProjectController", ProjectController);
ProjectController.$inject = ["projectService", "moment"];
function ProjectListController(projectService, moment) {
var date = new moment();
}
}
但是我得到了错误:
moment is not a constructor
如果我将工厂改为:
angular
.module('app')
.factory('moment', function ($window) {
return $window.moment;
});
我不再收到错误了。
第一种语法我做错了什么?
答案 0 :(得分:2)
angular.module('XRegExp', []).factory('XRegExp', ['$window', function ($window) {
return $window.XRegExp;
}]);
angular.module('lodash', []).factory('_', ['$window', function ($window) {
return $window._;
}]);
angular.module('admin', [
'XRegExp',
'lodash'
]);
现在照常注入您的服务