Exception Exception - 3 months ago 20
AngularJS Question

Injecting service to Directive

I am trying to inject a service to Directive like below

var app = angular.module('app',[]);
app.factory('myData', function(){
return {
name : "myName"
}
});
app.directive('changeIt',function($compile, myData){
return {
restrict: 'C',
link: function (scope, element, attrs) {
scope.name = myData.name;
}
}
});


But this is returning me error
Unknown provider: myDataProvider
. Someone please look into the code and tell me if I am doing wrong somewhere..

Answer

You can do injection on Directives, and it looks just like it does everywhere else.

app.directive('changeIt', ['myData', function(myData){
    return {
        restrict: 'C',
        link: function (scope, element, attrs) {
            scope.name = myData.name;
        }
    }
 }]);