私はRelayMutationを仕上げようとしています。私は問題を抱えています。可変値を取得してRelayMutationの中をパスするには?
私はRelayMutationに変数値を渡そうとしていますが、私はそれを行うことができません。
私の目標:私がAcceptを押すと、inviteAnswer変数を取得し、それを入力としてRelayMutationに渡します。
今、私はちょうど "undefined"としてinviteAnswerを取得しています。コンポーネント
私GraphqlMutationのaccept =() => {
const inviteAnswer = true; <<<--- I want this value here!
console.log(inviteAnswer);
const { event } = this.props.viewer;
console.log(event);
const mutation = new EventEditMutation({
event: event,
inviteAnswer: inviteAnswer,
});
console.log(inviteAnswer)
const callbacks = {
onSuccess: (payload) => {
console.log('success: ', payload);
},
onFailure: (err) => {
console.log('failure: ', err);
},
};
RelayStore.commitUpdate(mutation, callbacks);
Actions.chat({eventId: event.id});
};
InputFields(EventEditMutation)
export default mutationWithClientMutationId ({
name: 'EventEdit',
inputFields:{
id: {
type: new GraphQLNonNull(GraphQLID)
},
inviteAnswer: {
type: GraphQLBoolean,
}
},
あなたたちは私を助けることができれば、私は感謝の
RelayMutation.js(EventEditMutation.js)
import Relay from 'react-relay';
export default class EventEditMutation extends Relay.Mutation {
static fragments = {
event:() => Relay.QL`
fragment on Event {
id
guests {
user
status
}
},
`,
};
getVariables(inviteAnswer) {
console.log(inviteAnswer);
return {
id: this.props.event.id,
inviteAnswer: true,
}
}
getMutation() {
return Relay.QL`mutation {
EventEdit,
}`;
}
getFatQuery() {
return Relay.QL`
fragment on EventEditPayload {
Event {
guests
}
}
`;
}
getConfigs() {
return [{
type: 'FIELDS_CHANGE',
fieldIDs: {
Event: {
guests: this.props.event.guests,
}
}
}];
}
}
AcceptFunction。ありがとう!また、より良い方法があると思うなら、教えてください。
を問題は解決されていますか? –