未调用 Miragejs 种子函数
Miragejs seeds function not called
我正在尝试设置 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();
});
},
});
}
我试过复制粘贴提供的 example,但 seeds
方法仍然没有被调用。
miragejs包安装为dev包,使用的版本为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'),
);
将 makeServer
函数的 environment
参数更改为 development
或完全删除它(默认为 development
)可以解决问题。似乎在使用test
环境时,忽略了seeds
方法(source)。
我正在尝试设置 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();
});
},
});
}
我试过复制粘贴提供的 example,但 seeds
方法仍然没有被调用。
miragejs包安装为dev包,使用的版本为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'),
);
将 makeServer
函数的 environment
参数更改为 development
或完全删除它(默认为 development
)可以解决问题。似乎在使用test
环境时,忽略了seeds
方法(source)。