簡體   English   中英

我在 graphql javascript 中遇到突變查詢問題

[英]I have an issues with mutation query in graphql javascript

我嘗試了這種類型的突變,但沒有得到正確的響應,請幫我解決這個問題。

mutation: new GraphQLObjectType({
  name: "Mutation",
  fields: {
    createProduct: {
      type: new GraphQLNonNull(productType),
      args: {
        products: { type: new GraphQLNonNull(productInput) }
      },
      resolve: (_, products) => {
        let pro = products;
        console.log("pro", pro);

        return products.push(pro);
      }
    }
  }
});

您可能希望將 memory 中的產品保留在產品數組中。 您的代碼中有兩處錯誤。 首先,解析器的第二個參數返回 arguments 的 object,因為一個字段可以有多個 arguments。 您可以解構 arguments 或使用正常的 object 訪問語法。 其次, Array.prototype.push 返回數組的新長度 因此,您無法返回此調用的結果(您的產品類型很可能需要一個產品作為根值)。 而是退回product 你也在推動爭論。 也許你在那里有名字沖突。 我建議對 arguments 和不是 arrays、列表或集合的變量使用單數。

let products = [];

const schema = new GraphQLSchema({
  query: _,
  mutation: new GraphQLObjectType({
    name: "Mutation",
    fields: {
      createProduct: {
        type: new GraphQLNonNull(productType),
        args: {
          product: { type: new GraphQLNonNull(productInput) }
        },
        resolve: (_, args) => {
          console.log("pro", args.product);

          products.push(args.product);
          return args.product;
        }
      }
    }
  }),
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM