Angular ES6 - $ inject不是一个函数

krz*_*hub 2 javascript angularjs ecmascript-6

我刚开始学习Angular ES6的方式.我正在从github分析这个例子:https://github.com/sitepoint-editors/Angular-ES6-BookShelf/blob/master/app/Controllers/HomeController.js

我试过myselfe:

class ModalCtrl {
    constructor($scope, $rootScope, app) {
        $rootScope.$on('openModal', (event, data) => {
            $scope.data = data;
            $scope.modalClass = 'open';
        });
    }
}

ModalCtrl.$inject(['$scope', '$rootScope', 'app']);

export default ModalCtrl;
Run Code Online (Sandbox Code Playgroud)

但我得到了app.min.js:60 Uncaught TypeError: ModalCtrl.$inject is not a function 我做错了什么以及如何做到这一点?

dev*_*033 6

据我所知,你应该这样使用$inject:

ModalCtrl.$inject = ['$scope', '$rootScope', 'app'];
Run Code Online (Sandbox Code Playgroud)