Как вернуть массив идентификаторов строк с помощью фабрики в MirageJS?

В MirageJS я пытаюсь создать фабрику для простой модели массива.

Текущий код

Вот мой код:

  let server = new Server({
    models: {
      usertab: Model
    },

    factories: {
      usertab: Factory.extend( function(i) { return i } ),
    },

    seeds(server) {
      server.createList("tab", 3)
    },

    routes() {
      this.get("api/usertabs", (schema) => {
        return schema.usertabs.all()
      })
    }
    
})

Текущий результат

Приведенный выше код возвращает список объектов с id ключ под usertabs ключ:

{ 
  usertabs: [
    {id: "1"},
    {id: "2"},
    {id: "3"},
  ]
}

Требуемый результат

Я хочу заполнить массив простыми увеличивающимися числами, чтобы возвращаемое значение при использовании GET api/usertabs вернется:

["1","2","3"]

По какой-то причине нет документации api для Factoryтолько гид. Единственные примеры, которые я смог найти, - это те, которые создают массивы объектов.

1 ответ

       this.get("api/usertabs", (schema) => {
        return schema.db.usertabs.map(item => item.id);
      })

вернет массив вместо объекта, содержащего массив. более подробно это описано здесь: https://miragejs.com/docs/main-concepts/database/

Другие вопросы по тегам