Passer l'objet JavaScript / hash à Handlebars helper?
Est-il possible de passer un objet JavaScript/hachage dans un Guidon helper appel? J'aimerais faire quelque chose comme ceci:
<label>Label here</label>
{{#textField {'id':'text_field_1', 'class':'some-class', size:30} }}{{/textField}}
<p>Help text here.</p>
Voici un jsFiddle. Actuellement, il génère l'erreur suivante
Uncaught Error: Parse error on line 3:
...bel> {{#textField {'id':'text_field_1'
----------------------^
Expecting 'CLOSE', 'CLOSE_UNESCAPED', 'STRING', 'INTEGER', 'BOOLEAN', 'ID', 'DATA', 'SEP', got 'INVALID'
Sinon je pourrais probablement le faire et split sur ',", mais je ne suis pas friand de la syntaxe:
{{#textField "'id'='text_field_1','class'='some-class',size=30"}}{{/textField}}
REMARQUE: j'ai précisément ne voulez PAS passer des données/attributs (id, class, la taille, etc.) dans le modèle de() la méthode comme un objet JSON. Je veux tout dans le modèle.
source d'informationauteur Chad Johnson
Vous devez vous connecter pour publier un commentaire.
Résolu. Je l'ai fait:
Helper:
Et le modèle:
Par la documentation (en bas de la page), vous pouvez passer un nombre variable de paramètres à une méthode d'aide, et ils seront disponibles dans les options.de hachage (en supposant que les "options" est un paramètre de votre méthode d'aide). Et ce qui est aussi agréable à ce sujet est que vous pouvez utiliser des paramètres nommés, et l'ordre des paramètres n'a pas d'importance.
J'ai trouvé une autre meilleure façon de passer des objets.
Modèle:
Helper:
JSFiddle pour cette