Мой бэкэнд обрабатывает мутацию AddLike.Это берет UserId и CommentId или PitchId.В зависимости от того, что вы хотите, чтобы понравиться.Я хотел бы повторно использовать мой компонент LikeButton в течение всей аппликации. Таким образом, мне нужно определить свои переменные внутри моей Apollo React Mutation, чтобы получить CommentId или PitchID.Сейчас я не могу заставить что-либо работать.Какие-либо предложения?: -)
Вот код для компонента.API GrahQL работает.Так что ничего не изменится.
import * as React from 'react';
import { Mutation } from 'react-apollo';
import { ADD_LIKE } from '../../GraphQLStatements/GraphQLStatements';
interface ILikeButtonProps {
currentUser : number;
type : any;
index: number;
}
const LikeButton: React.SFC<ILikeButtonProps> = (props) => {
let inputType : string = "pitchId"
const DefineType = () => {
if (props.type === "comment") {
inputType = "commentId"
}
else {
inputType = "pitchId"
}
}
return (
<Mutation mutation={ADD_LIKE}>
{(addLike) => (
<i className="far fa-thumbs-up icon like__button"
onClick={e => {
e.preventDefault();
e.stopPropagation();
DefineType()
addLike({ variables : { like :
{ "userId": props.currentUser,
inputType : props.index}
}
}).then ((res : any) => {
console.log(res.data.addLike.statusMessage)
});
}}>
</i>
)}
</Mutation>
);
};
export default LikeButton;
Сейчас это не работает.Заранее спасибо!