使用 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; });
 }