Ember.js 如何使用API的搜索结果实时更新Ember模型

Ember.js 如何使用API的搜索结果实时更新Ember模型,ember.js,ember-data,Ember.js,Ember Data,快速备份:我正在创建一个带有Ember前端和Rails API后端的配方应用程序。我正在实现一个搜索功能,以查找基于成分的食谱。我已经配置了我的railsapi端点,它会发回正确的记录。我现在的问题是,我很难实时更新我的结果,即模型数据没有更新模板。这似乎是一个微不足道的问题,但无论出于何种原因,我一直无法解决它 以下是我的项目的外观: model(params) { this.store.query('recipe', {query: params}).then( response =

快速备份:我正在创建一个带有Ember前端和Rails API后端的配方应用程序。我正在实现一个搜索功能,以查找基于成分的食谱。我已经配置了我的railsapi端点,它会发回正确的记录。我现在的问题是,我很难实时更新我的结果,即模型数据没有更新模板。这似乎是一个微不足道的问题,但无论出于何种原因,我一直无法解决它

以下是我的项目的外观:

model(params) {
    this.store.query('recipe', {query: params}).then( response => {
        console.log("RESPONSE", response);
    })
}
recipes index.hbs(当前未更新):


我怎样才能解决这个问题呢?

嗯,我觉得自己很愚蠢。在this.store.query之前忘记了返回值-\uuu-

您不仅忘记了返回值
,而且由于调试语句,您也无法正确设置模型。应该是:

model(params) {
    var result = this.store.query('recipe', {query: params});
    result.then(response => console.log("RESPONSE", response));
    return result;
}

对于您的代码,即使在添加了一个返回之后,
model
的返回值也将是一个承诺,它将解析为打印响应的函数值,这是未定义的。

不更新是什么意思?当您创建配方的新实例时?我认为这与此有关:本质上,我是从API中获取记录(我可以使用控制台日志进行验证),但这些记录在模板中的模型中不可用
model(params) {
    var result = this.store.query('recipe', {query: params});
    result.then(response => console.log("RESPONSE", response));
    return result;
}