Ember Mirage - 无法捕获响应

Ember Mirage - Not able to capture the response

ember 的新手,我正在尝试使用 ember-cli-mirage 模拟 API 服务器。我正在创建从 account.jsstore 的请求,但响应不是我所期望的。

## /app/routes/account.js

import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';

export default Route.extend({
  store: service(),

  model() {
    this.store.findAll('accounts').then(response => {
      console.log(response)
    });
    // return this.store.findAll('accounts');
  }
});



## /app/mirage/config.js

export default function () {
  this.get('/accounts', (schema) => {
    return {
      data: [
        {
          firstName: 'John'
        }
      ]
    };
  }, {timing: 2000});
}

这是我得到的回复,

有什么遗漏吗?

您记录的 response 实际上是 store.findAll 的 return 值,而不是来自 Mirage 的 HTTP 响应。

store.findAll 包装了 HTTP request/response 逻辑,并实际响应 Ember 数据模型或模型数组的实例。在您的情况下,因为您调用了 findAll,响应是一个 Ember 数据模型数组。

如果您想查看 Mirage 响应的详细信息,请检查您的控制台是否有类似 Mirage: 200 OK for GET /accounts 的内容。您应该能够展开它以查看 Mirage 处理的请求和响应的详细信息。