用express和graphql查询mongodb

时间:2019-02-21 06:38:54

标签: node.js express graphql express-graphql

我们如何在mongo db中使用图ql,这是我的解析器代码

var resolvers = {
    test:()=>{
        return getproducts()
    },
 }

 const getproducts=()=>{
    return new Promise((resolve,reject)=>{
        Product.find({}).exec()
        .then(resp=>{
            console.log("response is ",resp);
            let stringData = resp.toString()
            resolve(stringData);
        }).catch(err=>{
            console.log('error is ',err);
            reject(err);
        })
    })
 }

,架构为:

test:String!

我正在将响应转换为字符串,在模式中,我们如何给它提供产品模式的类型?在此处输入代码

1 个答案:

答案 0 :(得分:1)

您的getproducts应该返回一个与您的GraphQL模式的属性相匹配的对象,我需要更多代码才能正确回答您的问题,但这是针对您问题的快速解决方案,请记住,{ {1}}产品架构应与mongodb架构匹配。

GraphQL

GraphQL架构

var resolvers = {
    Query: {
       getProducts: () => {
          return getproducts();
       },
    },
 }

 const getproducts = () => {
    return new Promise((resolve,reject)=>{
        Product.find({}).exec()
        .then(resp=>{
            console.log("response is ",resp);
            // let stringData = resp.toString()
            resolve(resp);
        }).catch(err=>{
            console.log('error is ',err);
            reject(err);
        })
    })
 }