<content url="{{contentUrl}}"></<content>
//Le modèle de page peut être modifié en appelant changeContentUrl dans le contrôleur. Cependant, l'utilisation de l'url dans l'événement de clic homeAction ci-dessous ne prend pas effetvar home = angulaire.module("home", [ "common " ]);
home.controller("homeCtrl", function($scope, commonFactory) {
$scope.contentUrl = "template/userInfo";
$scope.changeContentUrl = function(contentUrl) {
console.log(contentUrl);
$scope.contentUrl = "adada";
};
});
home.directive("content", function() {
return {
restrict : "E",
template : "<p ng-include='getContentUrl()'></p>",
link : function($scope, $element, $attr) {
$scope.getContentUrl = function() {
return $attr.url;
};
}
};
});
home.directive("homeAction",function(commonFactory){
return function($scope,element,attrs){
var node = element.find("li");
node.on("click",function(event){
var url = $(event.target).attr("url");
$scope.contentUrl=url;
console.log($scope.contentUrl);
});
};
});
homeAction a un problème :
function(commonFactory){ ne renvoie pas d'informations de configuration de directive et doit renvoyer JSON.