我有一个 Angular 1.4 控制器,其方法依赖于资源服务。我已经用 注释了该类的构造函数ng-annotate
,但 Angular 仍然诅咒在方法中找不到该服务:
var MyResourceFactory = require("myResource.service");
class MyController {
// @ngInject
constructor($location, $stateParams, $state, MyResource) {
... // some initialization code
}
myMethod(data) {
var resource = new MyResource();
resource.data = data;
resource.save();
}
}
module.exports = angular.module("MyModule", [])
.factory('MyResource', MyResourceFactory)
.controller('MyController', MyController)
.config(routes);
但是,在myMethod
( var resource = new MyResource()
) 的第一行执行失败:
ReferenceError: MyResource is undefined
at MyController.myMethod (myModule.module.js:214)
...
使用的技术:
- 角度 1.4
- 网页包
- 通天塔
- ng-注释
如何将 ngInject 应用于 ECMA6 类方法?