gpt4 book ai didi

templates - Ember model.get() 未正确返回值或绑定(bind)到模板

转载 作者:行者123 更新时间:2023-12-02 05:14:49 24 4
gpt4 key购买 nike

我有一条通过 .store.query() 填充模型属性的路线RSVP 哈希中的方法:

model(params, transition) { 
return Ember.RSVP.hash({
myData: this.store.query('table-datum', parameters)
});
}

这会返回一个 promise ,并且根据 Ember 检查器似乎将数据放入我的商店,我看到了正确的行数,并且它们都具有填充数据的属性。

然后,我的主视图模板中有一个简单的组件模板,带有 each。 block 显示输出:
    {{#each data as |result|}}
<tr>
<td>{{result.prop1}}</td>
<td>{{result.prop2}}</td>
</tr>
{{/each}}

我将属性传递给我的组件,如下所示:
        <div id="tableContainer">
{{result-table data=model.myData}}
</div>

但由于某种原因,模板绑定(bind)了正确的行数,但没有正确访问 prop1prop2类的位(所以我只得到 20 个左右的空白表行)

如果我尝试只输出 {{result}}在我的模板中,它看起来像这样:
<client@model:table-datum::ember574:1>

我很确定数据就在某个地方,只是我的模板似乎由于某种原因没有访问属性。

关于在哪里寻找这个的任何想法?

编辑:记录 result对象看起来几乎正确,但不完全正确:

enter image description here

扩展内部模型会显示一些数据,但也会显示“空对象”,这对我来说似乎有点不对劲!

enter image description here

编辑:如果有帮助,我有一个 Controller 功能,它会得到 model.myData并对其进行操作,这给了我期望的结果:
getMax() {
let max = _.max(this.get('model.myData'),'aField').aField;
console.log(max); // logs 41 as I expect
return max;
}

最佳答案

这是您在路线模型中所做的吗?

model() {
return Ember.RSVP.hash({
myData: this.store.query('table-datum', parameters)
}).then(function(results) {
return results;
}).catch(function(error) {
throw error;
});
},
setupController(controller, model) {
this._super(...arguments);
Ember.set(controller, 'myData', model.myData);
}

然后在模板中我将访问 myData。

关于templates - Ember model.get() 未正确返回值或绑定(bind)到模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38246572/

24 4 0