javascript - 如何将过滤器插入到 graphql 查询字符串中?
问题描述
不幸的是,据我所知,文档中没有任何关于如何将变量传递给过滤器的好例子。以下是在 App Sync 中工作的查询示例:
query listPayments {
listPayments(filter: {residentId: {contains: "some_random_id"}}) {
items {
timestamp
totalAmount
feeAmount
transactionId
paymentTraceId
paymentReferenceId
paymentMethodId
}
}
}
但我不知道如何将它传递给我的函数,然后与模板字符串交互:
export const getResidentPayments = async (residentId) => {
console.log('getting payments...')
try {
paymentHistoryResponse = (await API.graphql(
graphqlOperation(listPayments, {
input: {id: residentId}
}),
)).data
console.log('payment history res', paymentHistoryResponse);
paymentHistoryResponse = JSON.parse(paymentHistoryResponse);
return paymentHistoryResponse
} catch (error) {
console.log('got payment history err', error);
throw error;
}
}
const listPayments = ` query listPayments ($residentId: id ) {
listPayments(filter: {residentId: {contains: $residentId}}) {
items {
timestamp
totalAmount
feeAmount
transactionId
paymentTraceId
paymentReferenceId
paymentMethodId
}
}
}
`;
如果有人能告诉我我做错了什么,将不胜感激,因为这可能是一个相当明显的新手错误。我很震惊 graphql 没有这方面的文档示例,除非我也弄错了。
解决方案
AppSync 为您构建了许多功能。类型 Def 有什么用listPayments
?
listPayments
您是否为需要一个字段和一个字符串的过滤器输入?
推荐阅读
- python - 仅将行加载到数据框中基于从非结构化格式中搜索行中的子字符串
- clojurescript - 如何在 Figwheel 中重新加载时获取更新的应用程序?
- json - 用于数据负载的 Azure FCM NotificationHubClient 配置?
- mongodb - mongodb 从副本集实时迁移
- python - 优化或调整合并排序 3 方式的以下实现
- reactjs - 动态生成的材质 UI 单选按钮不可点击
- django - 在 Django 中设置函数字段的详细名称
- regex - Graylog 正则表达式在消息中提取第一个有效的 Mac 地址
- android - android渲染脚本函数
- python - 停止 rq worker 不会停止底层 ffmpeg 进程