J'ai un code simple:
define(['app'], function(app)
{
app.factory('factoryProvider', function(){
return {
name: 'my Name'
}
});
app.directive('myDiv',['factoryProvider', function(factoryProvider) {
return {
restrict: 'E',
replace: true,
templateUrl: 'link/to/template.html',
controller: function($scope) {
},
link: function(scope, routeParams, location) {
console.log(factoryProvider.name);
}
};
}])
});
Je veux pouvoir accéder à myFactory
dans la fonction link
, mais je ne peux pas! J'ai également essayé link: function(scope, routeParams, location, factoryProvider)
et cela n'a pas fonctionné non plus. Pourquoi?
Il devrait déjà être disponible dans la fonction de lien
app.factory('factoryProvider', function(){
return {
name: 'my Name'
}
});
app.directive('myDiv',['factoryProvider', function(factoryProvider) {
return {
restrict: 'E',
replace: true,
template: '<p>{{name}}</p>',
controller: function($scope) {
},
link: function(scope) {
scope.name=factoryProvider.name;
}
};
}]);