Ember.js Ember使用本地JSON文件,而不是教程中提供的幻影

Ember.js Ember使用本地JSON文件,而不是教程中提供的幻影,ember.js,ember-data,ember-cli,ember-cli-mirage,Ember.js,Ember Data,Ember Cli,Ember Cli Mirage,我对构建网站还不熟悉,在这个阶段我想做的就是使用本地JSON文件来检索数据,而不是使用ember教程中提供的幻影。您的mirage/config.js如下所示: export default function() { this.namespace = '/api'; let rentals = [{ //JSON }]; this.get('/rentals', function(db, request) { if(request.query

我对构建网站还不熟悉,在这个阶段我想做的就是使用本地JSON文件来检索数据,而不是使用ember教程中提供的幻影。您的mirage/config.js如下所示:

export default function() {
  this.namespace = '/api';

  let rentals = [{
        //JSON
      }];


  this.get('/rentals', function(db, request) {
    if(request.queryParams.area !== undefined) {
      let filteredRentals = rentals.filter(function(i) {
        return i.attributes.area.toLowerCase().indexOf(request.queryParams.area.toLowerCase()) !== -1;
      });
      return { data: filteredRentals };
    } else {
      return { data: rentals };
    }
  });

  // Find and return the provided rental from our rental list above
  this.get('/rentals/:id', function (db, request) {
    return { data: rentals.find((rental) => request.params.id === rental.id) };
      });
}

显示了部分解决方案,但我不知道应该写在哪里。任何帮助都将不胜感激。

在不使用幻影的情况下,有一些不同的选项可以存根某些数据。最清晰、最简单的方法就是抓取

将json文件放在公用文件夹中,我们称之为
something.json
。然后,使用fetch获取数据(这是路由的模型挂钩):

这个答案至少从1.13开始适用(可能更早)。它是从3.1开始编写的

model() {
   return fetch('something.json')
    .then(function(res) {
        return res.json()
    })
}