코드를 입력하세요
npm install -g apollo
const LOGIN_MUTATION = gql`
mutation login($email: String!, $password: String!) {
login(username: $email, password: $password) {
ok
token
error
}
}
`;
apollo client:codegen src/__generated__ --target=typescript --outputFlat
// 자동으로 생성된 코드
export interface login_login {
__typename: "LoginResult";
ok: boolean;
token: string | null;
error: string | null;
}
export interface login {
login: login_login;
}
export interface loginVariables {
username: string;
password: string;
}
참고: https://www.apollographql.com/docs/react/development-testing/developer-tooling/#apollo-codegen
const [loginMutation] = useMutation<login, loginVariables>(LOGIN_MUTATION, {
variables: {
username: "test",
password: "test",
},
onCompleted: (data) => data.login.token,
});