0
votes

comment puis-je passer un hachage dans la valeur de la case à cocher d'entrée dans angulaire 6

voici ce que j'ai essayé, 'je passe en revue un tableau de cases à cocher, chacune ressemble à ceci: item of items:

onCheckChange($event){
    console.warn($event.target.value);
}

//output on console: "[object Object]" .....as a string

myComponent.ts

 <input type="checkbox" [value]="{'a': item.title, 'b': item.id}" (change)="onCheckChange($event)">

idéalement, je veux un tableau de valeurs de hachage. Comment envoyer cette entrée?


0 commentaires

3 Réponses :


1
votes

Ne pouvez-vous pas simplement

 <input type="checkbox" (change)="onCheckChange({'a': item.title, 'b': item.id})">


2 commentaires

J'ai besoin de l'événement également pour obtenir la valeur vérifiée (event.target.checked). Bien sûr, je pourrais le passer comme un autre élément de hachage, cela fonctionnerait également.


cela peut être fait aussi, (change) = "onCheckChange ($ event, {'a': item.title, 'b': item.id})"



1
votes

Au lieu de la liaison de propriété, vous pouvez utiliser l'interpolation pour obtenir le résultat souhaité sous la forme

value="'{a: {{item.title}}, b: {{item.id}}'"

Bien que je pense toujours qu'il pourrait y avoir de meilleures façons d'atteindre ce que vous essayez de faire


0 commentaires

1
votes

Vous pouvez recevoir les informations sous la forme JSON.parse ($ event.target.value); dans la fonction on Change qui vous donnera l'objet approprié qui peut être utilisé pour créer un tableau de valeurs de hachage.

console.warn (JSON.parse ($ event.target.value);):

Ici, vous obtenez l'objet approprié et non une chaîne. Si les valeurs d'objet ne sont pas imprimées correctement dans la console, vous pouvez simplement utiliser JSON.stringify ($ event.target.value); Pour voir la valeur réelle envoyée dans le format de chaîne approprié et non comme "[objet objet]"


0 commentaires