如何从给定的“ id:”的AppSync / Dynamo表中的条目中仅获取一个字段(称为“名称”)?这不是让该“ id”的整个字段行都返回给我。我只需要一个字段。
以下内容无效:
const userName = await API.graphql(graphqlOperation(GetUsers, { id: "3b342de-34k5-434....." }, "name") );
模式:
type Users @model {
id: ID!
name: String
email: String
}
查询:
export const getUsers = `query GetUsers($id: ID!) {
getUsers(id: $id) {
id
name
email
}
}
答案 0 :(得分:1)
尝试以下
export const getUser = `query GetUsers($id: ID!) {
getUsers(id: $id) {name}
}`
const userName = (await API.graphql(graphqlOperation(getUsers, {id: "xxx"}))).getUser.data.name
请注意,await
为您提供了一个包含name
的嵌套对象。您必须将其提取出来。此外,您真正需要的是type User
,而不是type Users
。
答案 1 :(得分:0)
您的查询正在从您的graphql服务器中查询getUsers
,并询问id
,name
和email
。
如果只需要name
,则将查询更改为:
query GetUsers($id: ID!) {
getUsers(id: $id) {
name
}
}