gpt4 book ai didi

javascript - 为什么我不能在我的 graphql 解析器中调用函数

转载 作者:行者123 更新时间:2023-11-30 21:06:54 26 4
gpt4 key购买 nike

我试图在我的 graphql 解析器中调用多个 aysnc await,它一直告诉我我的Promise or function 不是一个函数。因此,我尝试调用具有相同结果的常规函数​​。我什至尝试通过连接器传递函数而不是仅通过导入传递函数,结果仍然相同……这是代码片段的示例:

import { clientdb, driver, fse } from './connectors';
.
..
...
....

createClient: async(parent, args, { Client }) => {

const singleclient = await new clientdb(args.client).save(); //this line works
const spawndb = await new fse.copy('c:/databases/default.graphdb', 'c:/databases/dbName.graphdb'); //this gives an error
},

TypeError: Cannot read property 'copy' of undefined
at _callee3$ (C:/Users/ADMIN/Desktop/GenysisGQL/server/resolvers.js:150:39)
at tryCatch (C:\Users\ADMIN\Desktop\GenysisGQL\node_modules\regenerator-runtime\runtime.js:65:40)
at Generator.invoke [as _invoke] (C:\Users\ADMIN\Desktop\GenysisGQL\node_modules\regenerator-runtime\runtime.js:299:22)

clientdb是从./connectors导入的mongodb驱动

const clientdb = mongoose.model('client', clientSchema);

fse.copy 来自 fs-extra

let orgCode = getHashKey(org, max);  //this is a regular function...same error

TypeError: (0 , _gethashkey.gethashkey) is not a function
at _callee3$ (C:/Users/ADMIN/Desktop/GenysisGQL/server/resolvers.js:158:23)
at tryCatch (C:\Users\ADMIN\Desktop\GenysisGQL\node_modules\regenerator-runtime\runtime.js:65:40)
at Generator.invoke [as _invoke] (C:\Users\ADMIN\Desktop\GenysisGQL\node_modules\regenerator-runtime\runtime.js:299:22)

我确实进行了 TypeOf 检查,我的函数不再是 Aysnc 中的函数。问题是为什么当 mongoDB 驱动程序正常时这些不再起作用。为什么他们受到不同的对待?

最佳答案

显然我被 fs-extra 文档误导了......毕竟 fs-extra 不是一个 promise 。必须使用 fs-extra-plus 或 fs-extra-promise-es6。几个小时后发现了这一点,然后开始怀疑文档。

关于javascript - 为什么我不能在我的 graphql 解析器中调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46517852/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com