You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ember Octane:如何在组件内遍历模型记录?

问题分析与解决建议

核心问题原因

第一种写法失效的关键是取值语法错误:在{{#each this.args.model as |location|}}的块内,你用了{{@location.title}},但location是each迭代生成的块级局部变量,不需要加@前缀。@符号在Ember模板中仅用于引用组件参数(比如@model)或模板上下文的内置变量(比如@index),迭代出来的局部变量直接用变量名即可。

修正后的第一种写法

将组件内的模板代码修改为:

{{#each this.args.model as |location|}}
  {{location.title}}
{{/each}}

修改后就能正常获取每个location的title值。

补充说明

第二种写法可以正常工作,是因为你直接把迭代出的location变量传给子组件LocationItem时,没有错误使用@前缀,因此逻辑正常。两种写法的核心逻辑本质一致,只是第一种在取值阶段多添加了不必要的@符号导致失效。

内容的提问来源于stack exchange,提问作者Nick Kleymenov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 07:54:19