在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”。
因此
让我们确保不要弄错名字。由于错误信息很难理解,希望你再努力一点。