Roy*_*vJr 6 javascript amazon-web-services aws-sdk graphql react-native
我正在使用 react native 和 aws amplify 来与 graphQL 交互。但是,在进行此更改时,我收到错误消息““变量‘输入’已将非空类型‘ID!’的 Null 值强制转换为空值”。
addStudent = async (classData) => {
try {
let user = await Auth.currentAuthenticatedUser();
const emailAttribute = user.attributes.email;
const studentObj = {
name: this.state.studentName,
email: emailAttribute,
class: classData.id,
}
await API.graphql(graphqlOperation(mutations.createStudent, { input: studentObj }));
} catch (err) {
console.error(err);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的架构:
type Class @model @auth(rules: [{ allow: owner, queries: null}]) {
id: ID!
name: String!
password: String!
email: String!
students: [Student] @connection(name: "ClassStudents")
}
type Student @model @auth(rules: [{ allow: owner, queries: null}]) {
id: ID!
name: String!
email: String!
class: Class! @connection(name: "ClassStudents")
attendance: [Attendance] @connection(name: "StudentAttendance")
}
Run Code Online (Sandbox Code Playgroud)
这是我试图称之为 AWS 生成的突变:
export const createStudent = `mutation CreateStudent($input: CreateStudentInput!) {
createStudent(input: $input) {
id
name
email
class {
id
name
password
email
students {
nextToken
}
}
attendance {
items {
id
date
}
nextToken
}
}
}
`;
Run Code Online (Sandbox Code Playgroud)
我已经尝试过类似问题的解决方案,例如更改 mutator 参数的语法,但错误仍然存在。知道如何解决这个问题吗?
SHG*_*G21 -5
是的,我认为突变的第一行应该是这样的;
export const createStudent = `mutation CreateStudent($input: ID!)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3256 次 |
| 最近记录: |