Zmiana content w AngularJS

0

Mam dwa przyciski:

 
<a id="loginButton" href="#" class="home" data-ng-click="active='Zaloguj'">Zaloguj</a> 
<a id="addButton" href="#" class="projects" data-ng-click="active='Dodaj użytkownika'">Dodaj użytkownika</a> 

a poniżej div:

 
<div id="changeDiv1">
<datan-type content="TU POWINNA SIE ZNALEZC ODPOWIEDNIA WARTOSC"></datan-type>
</div>

Jest to div w ktorym dynamicznie zmienia mi się zawartość.
W jaki sposób najlepiej zmieniac wartosc w atrybucie content. Tak żeby po wcisnieciu loginButton pojawiła sie tam wartość "login" a po kliknieciu na addButton wartość "dodaj".

0

A tak wygląda dyrektywa - zdaje sobie sprawe, że nie widząc tego nie jest łatwo odpowiedzieć :):

 
modul.directive('datanType',function($compile){
	
	
	var getTemplate = function(contentType) {
		var template = '';
		
		switch(contentType){
		case "Zaloguj":
			template = loginDiv;
			break;
		case "Informacje":
			template = informationDiv;
			break;	
	}
		return template;
		};
		
	 var linker = function(scope, element, attrs){
         element.html(getTemplate(attrs.content));
         $compile(element.contents())(scope);
         
       };

       return {
           restrict: "E",
           replace: true,
           link: linker,
           scope: {
               content:"="
           }
       };
	
});


1

Sterowanie widokiem (contentem) możesz zrobić z poziomu kontrollera widoku i tak bedzie chyba najprościej. W przyciskach powyżej diva dodaj np. ng-click z funkcją z kontrolera, ktora zmieni zmienną content. Następnie przekaż tą zmienną do atrybutu content dyrektywy. Można tez kombinować z logiką wewnątrz dyrektywy, ale to wg. mnie złe podejście. To tak na szybko

1 użytkowników online, w tym zalogowanych: 0, gości: 1