使用 JSONAPI 处理 Ember 模型错误
Handling Ember model error w/ JSONAPI
这是对此处大部分内容的回答:
我什至不会深入探讨 Ember 文档如何强调遵循 JSON API 规范 (http://jsonapi.org/format/),但据我所知甚至不遵守它们(基于上面链接的答案)...但我离题了!
我不确定如何从 model() 挂钩本身将错误引入我的模型。
例如:
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return this.get('store').findAll('page').catch(function(){});
}
});
我无法访问我的模板中的错误:
{{#each model.errors as |error|}}
<div class="error msg_animate">{{{error.message}}}</div>
{{/each}}
我知道我在这里遗漏了一个关键因素。
谁能给我指出正确的方向?
错误响应应遵循标准 JSON API 格式,
http://jsonapi.org/format/#errors
示例格式,
{
"errors": [
{
"status": "Error status",
"code": 500,
"message":"error message",
"detail": "Some generic non property error message",
"source": {
"pointer": "data"
}
}
]
}
最重要的是,您需要为 Promise 包含错误回调函数,
样本,
model() {
return this.get('store').findAll('page').then(
function(result){return result;},
function(errors){ return errors; });
}
这是对此处大部分内容的回答:
我什至不会深入探讨 Ember 文档如何强调遵循 JSON API 规范 (http://jsonapi.org/format/),但据我所知甚至不遵守它们(基于上面链接的答案)...但我离题了!
我不确定如何从 model() 挂钩本身将错误引入我的模型。
例如:
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return this.get('store').findAll('page').catch(function(){});
}
});
我无法访问我的模板中的错误:
{{#each model.errors as |error|}}
<div class="error msg_animate">{{{error.message}}}</div>
{{/each}}
我知道我在这里遗漏了一个关键因素。 谁能给我指出正确的方向?
错误响应应遵循标准 JSON API 格式,
http://jsonapi.org/format/#errors
示例格式,
{
"errors": [
{
"status": "Error status",
"code": 500,
"message":"error message",
"detail": "Some generic non property error message",
"source": {
"pointer": "data"
}
}
]
}
最重要的是,您需要为 Promise 包含错误回调函数, 样本,
model() {
return this.get('store').findAll('page').then(
function(result){return result;},
function(errors){ return errors; });
}