我目前正在尝试访问emberjs车把文件中的关联数组。通过硬编码值访问没问题,但是我想基于动态“索引”获取元素。
到目前为止,我的代码是
{{#each this.model.ambient as |sound|}}
<Ambientsound @buttonActive={{soundPlayers.[Bells]}} @sound={{sound}} @updateFunction={{action "updateSound"}}/>
{{/each}}
并且控制器的相关部分是:
soundPlayers: {"Bells":100,"Fireplace":30}
我上面的代码可以正常工作,但是现在我正在尝试基于sound.id的值访问soundPlayers。[...],就像这样:
{{#each this.model.ambient as |sound|}}
<Ambientsound @buttonActive={{soundPlayers.[sound.id]}} @sound={{sound}} @updateFunction={{action "updateSound"}}/>
{{/each}}
sound.id中的Value作为字符串传递,对此我无能为力。
如何将sound.id转换为允许我访问数组的内容,或以某种方式使句柄查询短语,以便可以从数组中获取结果?我也可以考虑重塑控制器中的数组。任何有帮助的都欢迎!
答案 0 :(得分:0)
首先,您应该做{{soundPlayers.Bells}}
。
接下来,您可以使用get
助手:
<Ambientsound @buttonActive={{get soundPlayers sound.id}} @sound={{sound}} @updateFunction={{action "updateSound"}}/>