Функция семян 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
метод игнорируется (источник).