在定义Mutation时,使用“Object.assign”函数将未设置的变量赋值为“null”。例如:
const UPDATE_USER_DATA = gql`
mutation updateUserData($name: String!, $age: Int, $location: String) {
updateUserData(name: $name, age: $age, location: $location) {
id
name
age
location
}
}
`;
const [updateUserData, {data}] = useMutation(UPDATE_USER_DATA);
const handleClick = () => {
updateUserData({
variables: Object.assign({
name: "Alice",
age: null, //未设置变量
location: "New York"
}, data) //data为数据库中当前条目的值对象,可用于更新
})
};