所以这就是场景,我需要在嵌套的每个循环中传递一个带有动作助手的父ID。
{{#each}} {{! iterating the model here (arrayController) }}
{{#if showingApplicants}} {{! this is set by a button that changes a property inside this particular model object}}
{{#each applicants}}
<button {{action addLabel _id}}>Add Label...</button>
{{/each}}
{{/if}}
{{/each}}
我尝试过../_id
和../../_id
。两者都代表一个未定义的值。有线索吗? 另外:是否可以在动作帮助器中传递两个值?
答案 0 :(得分:2)
您可以在#each
块上创建变量,以便在任何上下文中引用它们
{{#each x in content}}
{{#if x.showingApplicants}}
{{#each applicant in x.applicants}}
<button {{action addLabel x.id}}>Add Label...</button>
{{this.controllerProperty}}
{{x.parentModelProperty}}
{{y.childModelProperty}}
{{/each}}
{{/if}}
{{/each}}
您也可以不为申请人命名,但如果您从命名外部上下文开始,我建议为嵌套each
执行此操作以保持一致性并避免可能的名称冲突(外部变量和子项之间)属性)。
希望这有帮助
答案 1 :(得分:-1)
此问题的解决方法是将模型数据映射为包含父ID和子ID的id对象。