[英]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.