0

J'essaie de lier une valeur de modèle à un élément polymère à bascule en papier dans un cadre dartangulaire.Liaison bidirectionnelle avec une bascule en papier avec une angulaire de fléchette

<paper-toggle-button [(checked)]="share.pin"></paper-toggle-button> 

Cela ne fonctionne pas. Il ne fait que définir le bouton bascule basé sur la valeur share.pin mais pas dans l'autre sens.

J'ai essayé d'ajouter un gestionnaire d'événements mais je n'ai pas réussi.

<paper-toggle-button [checked]="share.pin" (change)="share.pin=$event"></paper-toggle-button> 
+0

Ceci est la manière correcte de deux données de manière obligatoire dans angulaire 2. Est-ce que la manière correcte en polymère? –

+0

Lorsque vous posez une question sur un problème causé par votre code, vous obtiendrez de bien meilleures réponses si vous fournissez du code que les gens peuvent utiliser pour reproduire le problème. Voir [Comment créer un exemple minimal, complet et vérifiable] (https://stackoverflow.com/help/mcve). – georgeawg

Répondre

0

Essayez cette

checked="{{share.pin::change}} 
0
<paper-toggle-button [(checked)]="share.pin"> 
</paper-toggle-button> 

J'ai essayé d'ajouter un gestionnaire d'événements, mais sans succès.

<paper-toggle-button [checked]="share.pin" (change)="share.pin=$event"> 
</paper-toggle-button> 

La syntaxe de liaison dans les deux sens (la banane dans une boîte) est vraiment juste du sucre syntaxique pour une propriété de liaison et un événement de liaison. Angulaire desugars la paperToggleButton de liaison dans ce:

<paper-toggle-button [checked]="share.pin" (checkedChange)="share.pin=$event"> 
</paper-toggle-button> 

Pour plus d'informations, voir Angular Developer Guide - Template Syntax (Two-Way Binding)

+0

Comment savons-nous que l'événement est (checkedChange)? Où vérifier cela? La réponse que vous avez suggérée ne fonctionne pas. Une façon de le faire fonctionner est (change) = "share.pin =! Share.pin" – abhi