android-studio - Android Studio 中的 AWS Amplify GraphQL 未知指令

标签 android-studio graphql aws-amplify aws-amplify-cli aws-amplify-sdk-android

我一直在尝试使用 AWS Amplify 来生成 GraphQL API 和后端。我可以使用引导式架构创建来创建一个工作后端。我选择了 Todo 示例。我可以从 Android Studio 内置的应用程序中调用它。查询和突变工作正常。每当我使用 Android Studio 查看 amplify/backend/api/project/(其中 project 是项目名称)中的 schema.graphql 时,我都会收到有关尝试重新定义 Todo 和使用未声明指令 @model 的错误。我确定我遗漏了一些明显的东西。所以任何帮助将不胜感激。
Android Studio 3.6.3/Gradle 5.6.4/Gradle Plugin 3.6.3/JS Graph QL 2.4.0/Java Language/Amplify CLI 4.18.1/npm 6.14.4/node 12.16.2
尝试以这种方式使用这个 graphql 插件是错误的吗?
重现:
在 Android Studio 中创建一个带有空事件的项目。
从项目根运行:

amplify init 
接受默认值。
跑:
amplify add api
选择 GraphQL、引导模式并选择 Todo 示例。否则采用默认值。
跑:
amplify push
amplify/backend/api/project 中的 graphql.schema 将包含 todo 模式
type Todo @model {
...
}
其中 ... 是默认字段。
这会产生错误

tried to use an undeclared directive "model"


并且还会产生 3 个错误实例

tried to redefine existing 'Todo' type


我可以看到 amplify 已将相同的 json 模式放入 #current-cloud-backend 和项目构建目录中。
我接受了默认的 .graphqlconfig.yml 文件。
快速更新:
我确实发现我可以通过执行以下操作来消除错误,但似乎是不必要的黑客攻击。虽然如果这是正确的公平。
  • 我编辑了 .yml 以排除模式的 #current-cloud-backend 副本并排除模式的构建版本。
  • 我从 directives 上的 Amplify 网页手动粘贴了指令 SDL。放入一个 graphql 文件并将其包含在 yml 中。

  • 这消除了关于@model 的错误。
    我也遵循了 this article 中的建议它处理了关于@aws_subscribe 未定义的错误。
    但是我仍然在 amplify/backend/api/project 中生成的 schema.graphql 中收到多个重新声明错误

    最佳答案

    我遇到了类似的错误。我使用了博客/帖子模式模板并对其进行了自定义。运行放大推送并重新输入“@model”后,错误消失了。

    关于android-studio - Android Studio 中的 AWS Amplify GraphQL 未知指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61523396/

    相关文章:

    android - 如何分别在android和ios上原生运行flutter应用?

    android - 使用Koin库时无法导入ViewModel

    graphql - 解决大数据时,Apollo Server的性能降低

    elixir - 如何使用 Elixir 中的苦艾酒在查询中的嵌套项目上使用参数?

    aws-amplify - gatsby 图像在 aws amplify 中托管时不显示,但在本地开发/netlify/gatsby 云上正常

    Android 各种来自 Gradle 和 Kotlin 的错误

    angular - GraphQL + Angular 2 服务

    reactjs - 如何将不使用 Next.js 的 React SSR 应用程序部署到 AWS Amplify?

    reactjs - 如何使用 AWS Amplify 和 Next.js 创建生产环境变量

    java - Android Studio 不让我编译特定项目