Функция семян Miragejs не вызывается

Я пытаюсь настроить сервер miragejs, но по какой-то причине seedsфункция не вызывается. Другая функция сервера,routes, вызывается, и маршруты отображаются правильно.

export default function makeServer({ environment = 'test' } = {}) {
  return new Server({
    environment,

    models: {
      user: Model,
      diary: Model,
    },

    seeds(server) {
      debugger; // not hit
      seedUsers(server);
      seedDiaries(server);
    },

    routes() {
      debugger; // hit
      this.namespace = 'api';
      this.get('/users', (schema) => schema.users.all());
      this.get('/diaries', (schema) => {
        debugger; // hit
        schema.diaries.all();
      });
    },
  });
}

Я пробовал скопировать приведенный пример, ноseeds метод до сих пор не вызван.

Пакет miragejs устанавливается как пакет разработчика, а используемая версия - 0.1.40. ВmakeServer функция вызывается в файле index.jsx следующим образом:

if (process.env.NODE_ENV === 'development') {
  makeServer();
}

ReactDOM.render(
  <Provider store={store}>
    <ConnectedRouter history={history}>
      <App />
    </ConnectedRouter>
  </Provider>,
  // eslint-disable-next-line no-undef
  document.getElementById('root'),
);

1 ответ

Решение

Изменение makeServer функции environment параметр для development или удалить его полностью (по умолчанию development) решает проблему. Кажется, что при использованииtest окружающая среда, seedsметод игнорируется (источник).

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