在AWS Amplify的API.graphql中,出现了”TypeError:必须提供源。接收到的是未定义的”错误

前提 tí) – precondition/ premise/ prerequisite

增加API并使用GraphQL进行扩展。

const todos = await API.graphql(graphqlOperation(queries.listTodos));
console.log(todos)

将以上代码翻译成中文:
const todos = await API.graphql(graphqlOperation(queries.listTodos));
console.log(todos)

当通过类似于这样的代码调用API时,如果出现 “TypeError: 必须提供源代码。收到: 未定义” 的错误,如何处理。

处理

我設定了一個不存在的查詢,結果就像是在複製粘貼樣本。這不是使用queries.listTodos,而是使用了其他方式。

继续记录

我又陷进了同样的错误…

导出创建答案的常量createAnswers,mutation CreateAnswers的参数为$input和$condition。

在这种情况下生成的代码如上所示。

等待API.graphql(graphqlOperation(mutations.CreateAnswers, {input: result}));

不可以那样。

等待 API.graphql(graphqlOperation(mutations.createAnswers, {input: result}));

这是正确的选择。
不同之处在于,create函数的”c”是大写还是小写的区别。无论如何,都是名称的错误,我错误地复制并粘贴了”`mutation CreateAnswers(“。正确的应该是”export const createAnswers”。

因此

让我们确保不要弄错名字。由于错误信息很难理解,希望你再努力一点。

bannerAds