2
votes

Appel de différentes fonctions en cliquant sur le bouton angulaire 6

Hé, puis-je savoir que s'il y a une possibilité en angulaire que nous puissions appeler différentes fonctions différentes en cliquant sur le même bouton, comme au premier clic, je veux appeler la fonction A puis au deuxième clic, je veux appeler la fonction B. Si oui? puis pls help

functionB()
{
}

puis après avoir cliqué pour la première fois, je veux appeler la fonction A

functionA()
{
}

puis sur le deuxième clic functionB

<button (click)="onclick()" type="button">Save </button?


0 commentaires

3 Réponses :


3
votes

Vous pouvez définir une propriété dans votre composant et avoir une logique à incrémenter au clic. Veuillez voir ci-dessous ...

export class MyComponent {
  constructor() {}
  private buttonCounter:number = 0;

  click() {
  this.buttonCounter++;
  switch this.buttonCounter {
    case 1:
      functionA();
      break;
   case 2:
     functionB();
     break;
  default:
    break;


  }



  }


0 commentaires

0
votes

Une doublure ...

La fonction A sera frappée en premier. La fonction B sera frappée à chaque fois après.


0 commentaires

0
votes

Disons qu'au premier clic, vous souhaitez appeler function_A. au deuxième clic function_B, et ainsi de suite.

    clicks = (function() {
    var first = true;
    var second = true;
    return function() {
      if(first == true && second == true){
        this.function_A();
        second = false;
        first = false;} else if(first == false && second == false){
          this.function_B();
          first = true;
          second = false;} else if(first==true && second==false){
            this.function_C();
            first = false;
            second = true;
          }
          else{
            this.function_D();
            first = true;
            second = true;
          }

    }
  })();




function_A() {
   "do something";
  };

function_B() {
   "do something";
  };

function_C() {
   "do something";
  };

function_D() {
   "do something";
  };

et en HTML, définissez la propriété "(click) = clicks ()" sous la propriété du bouton.

J'espère que cela fonctionnera .


2 commentaires

Ce n'est vraiment pas la manière «dactylographiée» de faire les choses. Vous devriez aller avec la propriété du composant comme @Paul suggéré


@SeaBiscuit En fait, je suis un débutant dans ce domaine. Mais j'ai essayé ce que Paul a suggéré. n'a pas fonctionné dans mon cas.