2017-05-16 6 views
0

J'utilise le wrapper ember-cli-clipboard pour créer un ensemble de boutons dans une boucle {{#each}}...{{/each}} qui devrait copier un petit texte dans le presse-papiers si vous cliquez dessus. Chaque élément a son propre texte et son propre bouton. Malheureusement, je ne peux pas définir le clipboardTarget avec un ID dynamique, de sorte que les boutons copieront tous à partir du premier élément au lieu de copier à partir de chaque élément.ember-cli-clipboard clipboard dynamiqueTarget

Le composant ressemble à ceci:

<ul> 
    {{#each element as |item|}} 

     {{#copy-button clipboardTarget=".name" success=(action 'copiedCharacter')}} 
      <span class="name">{{item.text}}</span> 
     {{/copy-button}} 

    {{/each}} 
</ul> 

Au lieu de clipboardTarget=".name" je besoin de quelque chose comme un {{uniqueID}}:

<ul> 
    {{#each element as |item|}} 

     {{#copy-button clipboardTarget="{{uniqueID}}" success=(action 'copiedCharacter')}} 
      <span id="{{uniqueID}}">{{item.text}}</span> 
     {{/copy-button}} 

    {{/each}} 
</ul> 

Création de l'ID est pas le problème, mais en passant à l'intérieur du {{#copy-button ...}} ne fonctionne pas ... des suggestions?

Répondre

0

Vous pouvez l'utiliser comme direclty cette clipboardTarget=uniqueID

 {{#copy-button clipboardTarget=uniqueID success=(action 'copiedCharacter')}} 
      <span id={{uniqueID}}>{{item.text}}</span> 
     {{/copy-button}} 
+1

est gentil ... Je pensais que c'est une chose de syntaxe .. J'ai juste besoin d'ajouter un «#» pour un élément d'identification pour le faire fonctionner comme 'clipboardTarget'. J'ai fait quelque chose comme 'clipboardTargeWithHash'. Merci pour l'indice! – Viktor

+0

Vous êtes les bienvenus ... juste un indice, il y a [aide de concatège] (https://emberjs.com/api/classes/Ember.Templates.helpers.html#method_concat) qui peut être utile pour la concaténation simple. – kumkanillam