angular-material,如何添加新服务?

angular-material, how to add a new service?

如何向模块添加新服务?

在angularjs中,可以这样实现:

var app = angular.module('myApp', []);
app.controller('myController', function(){
    app.service('userService', function(){
        // .....
    });
    var service = angular.injector(['ng', 'myApp']).get('userService');
    // ......
});

但在angular-material中,这将引发异常。

Error: [$injector:unpr] Unknown provider: $rootElementProvider <- $rootElement <- $$animateQueue <- $animate <- $compile <- $mdUtil <- $mdTheming <- $$animateQueue

Codepen: enter link description here

你可以这样做。您可以将服务注入控制器并使用服务的所有方法和属性。

var app = angular.module('myApp', []);
app.service('userService', function(){
        // .....
    });
app.controller('myController', function(userService){

    // ......
});

代码笔:https://codepen.io/anon/pen/owOaeN

更多信息:https://docs.angularjs.org/guide/di