阿波罗突变没有出现在道具中
Apollo mutation not appearing in props
这是我的组件:
import React, { Component } from 'react';
import { gql, graphql, compose } from 'react-apollo';
export class Test extends Component {
render() {
console.log("this.props: " + JSON.stringify(this.props, null, 2));
return null;
}
}
const deletePostMutation = gql`
mutation deletePost ($_id: String) {
deletePost (_id: $_id)
}
`;
export const TestWithMutation = graphql(deletePostMutation)(Test)
这似乎是一个非常简单的示例,但是当我 运行 它时,道具是空的:
props: {}
您必须在架构中的突变解析函数中添加 return 语句。
示例:
resolve: function(source, args) {
// Add the user to the data store
exampleCollection.insert({
category: args.category,
subCategory: args.subCategory,
title: args.title,
description: args.description,
salary: args.salary,
region: args.region,
created_at: new Date()
});
// return some value.
return args.title;
}
实际上,上面问题中的代码就是一个很好的例子。 函数在那里。问题是 JSON.stringify 没有显示函数 ♂️。至少这个问题可以作为如何做的一个例子
这是我的组件:
import React, { Component } from 'react';
import { gql, graphql, compose } from 'react-apollo';
export class Test extends Component {
render() {
console.log("this.props: " + JSON.stringify(this.props, null, 2));
return null;
}
}
const deletePostMutation = gql`
mutation deletePost ($_id: String) {
deletePost (_id: $_id)
}
`;
export const TestWithMutation = graphql(deletePostMutation)(Test)
这似乎是一个非常简单的示例,但是当我 运行 它时,道具是空的:
props: {}
您必须在架构中的突变解析函数中添加 return 语句。
示例:
resolve: function(source, args) {
// Add the user to the data store
exampleCollection.insert({
category: args.category,
subCategory: args.subCategory,
title: args.title,
description: args.description,
salary: args.salary,
region: args.region,
created_at: new Date()
});
// return some value.
return args.title;
}
实际上,上面问题中的代码就是一个很好的例子。 函数在那里。问题是 JSON.stringify 没有显示函数 ♂️。至少这个问题可以作为如何做的一个例子