我正在尝试实现一个在后端使用 Sequelize 的 GraphQL 服务器(在幕后使用 MSSQL)。而且我有一个按预期工作的查询(从单个 SQL 表中检索数据)。
但是后来我为同一个模式设置了一个突变,当我在 GraphiQL 中运行这个突变时,我发现虽然它确实执行了突变的解析函数中的东西(这是创建我的 Sequelize 模式的一个实例),但它确实不要把我的物品还给我。
现在,我认为这是因为我的 Sequelize.create
函数返回了一个承诺,而 resolve 无法处理?
这是我到目前为止所得到的:
resolve(_,args){
Forecast.create({
bunit: args.bunit,
season: args.season,
position: args.position,
currency: args.currency,
settle_date: new Date(args.settle_date),
reference: args.reference
}).then(forecast => {
return forecast;
}).catch(err => {
console.error(err);
return err;
});
}
我找不到任何清晰的解释或教程来告诉我如何构造当我异步执行某些操作时解析函数需要返回的内容。或者我只是不明白,这也很有可能。