gpt4 book ai didi

javascript - Ember 模板中的 "Rolling back"错误状态

转载 作者:行者123 更新时间:2023-12-03 08:07:39 26 4
gpt4 key购买 nike

我的 Ember Controller 访问 JSONAPI 服务(使用 Ember 数据),如下所示:

    model: function(params) {
return Ember.RSVP.hash({
data: this.store.query('recipe', params),
...
});
},

params可以包含一个过滤字符串,如果格式错误,将导致服务器以 HTTP 代码 422 进行响应。我在同一个 Controller 中捕获此内容,如下所示:

    actions: {
error: function(error, transition) {
console.log('Retrieval error: ' + error.message);
this.controller.set('filterValid', false);
}
}

然后在我的 Handlebars 模板中,我可以检查 {{filterValid}}我的 Controller 的属性,并可选择将样式应用于 <input>标签,通知用户错误。

但是: 一旦 filterValid属性已设置为 false,我似乎找不到正确的操作或 Hook 来将属性回滚/重置为 true当查询没有失败时。由于上述代码位于我的路由中,因此我无法直接访问 model 中的 Controller 功能。 (也不,根据我见过的模型/ Controller /模板图,应该我。)

最佳答案

我认为您可能正在寻找 setupController Hook 。它接收解析后的模型和 Controller 。

setupController: function(controller, model) {
this._super(controller, model);
controller.set('filterValid', true);
}

我不确定发生错误时是否调用该方法(我猜它没有被调用),但因为您只需要在事情正常时设置标志。我认为这对你有用。

关于javascript - Ember 模板中的 "Rolling back"错误状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34312315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com