2017-07-10 2 views
-1

Je voudrais présenter une superposition à un bouton au moyen du code suivant:angulaire: fonction de transformation html variables

<div id="overlay" ng-if="vm.showOverlay">{{control}}</div> 
<button ng-mouseover="vm.showOverlay = true" ng-mouseleave="vm.showOverlay = false" class="btn" ng-class="{classWhite: control.values.value1, classRed: control.values.value2, classOrange: control.values.value3}" ng-click="colorChange(control)"></button> 

Cependant, le contrôle que je reçois de:

<td ng-repeat="control in general"> 

est un objet complexe sur lequel je devrais appliquer la fonction:

$scope.stateFromControl=function(control){ 
     var values=control.values; 
     var resultValue=(values.value1)?0:(values.value2)?1:2; 
     return translateState(resultValue); 

    } 

pour afficher la valeur. L'insertion de la fonction dans l'emplacement {{}} ne fonctionne pas; comment puis-je le faire?

Répondre

0

I (temporairement) géré en ajoutant un état variable I arrive à chaque changement:

var newValue={ 
      id: i, 
       name: impianto, 
      state: translateState(oldStatus), 
      values:{ 
       value1: oldStatus==0, 
         value2: oldStatus==1, 
         value3: oldStatus==2 
      } 
     } 

à utiliser de cette façon:

<div id="overlay" ng-if="vm.showOverlay">{{control.state}}</div> 

rugueux, mais travailler.