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.
4 réponses
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) 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
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();
}
}
Utilisez l'opérateur ternaire (? .. :) pour le rendu conditionnel.
<form (ngSubmit)="type === 'add' ? submitCreateForm() : submitUpdateForm">
Questions connexes
De nouvelles questions
javascript
Pour des questions concernant la programmation dans ECMAScript (JavaScript / JS) et ses divers dialectes / implémentations (hors ActionScript). Veuillez inclure toutes les balises pertinentes dans votre question; par exemple, [node.js], [jquery], [json], etc.