Je suis un débutant total avec cette "chose". Je ne parle pas du mien…

J'ai une vue qui a:

<form (ngSubmit)="submitCreateForm()">

J'ai également une variable que je peux utiliser, appelée type qui a une valeur add ou edit.

Comment 2 méthodes ont-elles défini submitCreateForm et submitUpdateForm

Comment puis-je modifier le ngSubmit dans le <form> pour appeler submitCreateForm si le type est add ou submitUpdateForm lorsque le type est edit?

Je sais que cela semble trivial, mais la syntaxe est assez compliquée pour moi. Idéalement je recherche une seule ligne conditionnelle.

0
Matt Komarnicki 20 juin 2019 à 05:54

4 réponses

Meilleure réponse

Pourquoi n'avez-vous pas (ngSubmit)="submit()" et dans le script de composition du composant devez appeler la méthode respective en fonction de la variable de type?

1
Ramesh Thiruchelvam 20 juin 2019 à 03:11

1) Ce n'est pas une très bonne pratique mais cela fera l'affaire. Essayez de conserver deux formulaires basés sur ce booléen.

<form ng-if="type == true" (ngSubmit)="submitCreateForm()">
<form ng-if="type != true" (ngSubmit)="submitUpdateForm()">

2) Ma deuxième suggestion est d'utiliser une action de soumission commune et une logique distincte basée sur le «type» booléen

0
Dasun Manathunga 20 juin 2019 à 03:02

Dans le back-end, vous pouvez gérer cela, vous pouvez toujours appeler submitForm ()

<form (ngSubmit)="submitForm()">

Laissez la fonction submitForm () décidera quelle soumission appellera en fonction du type

 submitForm() 
 {
      if(this.type==="add"){
       this.submitCreateForm();
      }
      else{
       this.submitUpdateForm();
     }
 }
1
Debabrata Paul Chowdhury 20 juin 2019 à 03:03

Utilisez l'opérateur ternaire (? .. :) pour le rendu conditionnel.

<form (ngSubmit)="type === 'add' ? submitCreateForm() : submitUpdateForm">
0
Swapnil 20 juin 2019 à 03:01