2015-03-07 5 views
1

У меня проблема, похожая на this one. Но в моем случае есть динамическое количество объектов (сообщения), чтобы связать так, если я сделать это таким образом:Связывание имени динамической переменной

{{#each Posts}} 
... 
    {{#each Comments}} 
    {{/each}} 
    <form> /* new comment is added here */ 
    <textarea name="text" value="{{newCommentText}}" /> 
    <input type="submit" disabled="{{!newCommentText}}" /> 
    </form> 
{{/each}} 

значение все прокручиваемыми синхронизируются. Мне нужно как-то указать уникальное имя переменной для каждой формы (например, {{PostId_newCommentText}}). Есть ли способ достичь этого?

ответ

3

Вы можете использовать restricted references добавить каждый новый комментарий к соответствующему Post:

{{#each Posts}} 
    <form> 
     <!-- .newCommentText === this.newCommentText --> 
     <textarea name="text" value="{{.newCommentText}}" /> 
     <input type="submit" disabled="{{!.newCommentText}}" /> 
    </form> 
{{/each}} 

Другой вариант заключается в использовании @index и хранить все новые комментарии в отдельном массиве:

{{#each Posts}} 
    <form> 
     <textarea name="text" value="{{NewComments[@index]}}" /> 
     <input type="submit" disabled="{{!NewComments[@index]}}" /> 
    </form> 
{{/each}} 

Живая демо here ,