私は簡単なコードを持っています:
_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);
}
};
}])
});
_
myFactory
関数内でlink
にアクセスできるようにしたいのですが、できません!私もlink: function(scope, routeParams, location, factoryProvider)
を試しましたが、それもうまくいきませんでした。どうして?
リンク関数内ですでに利用可能である必要があります
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;
}
};
}]);