如果不使用amplify,如何从AppSync GraphQL模式生成Typescript定义?
我使用aws cdk设置了我的AppSync api,但没有使用他们的amplify框架。我正在尝试找出如何/是否可以在不使用amplify(即无法访问如果不使用amplify,如何从AppSync GraphQL模式生成Typescript定义?,typescript,graphql,aws-amplify,aws-appsync,graphql-codegen,Typescript,Graphql,Aws Amplify,Aws Appsync,Graphql Codegen,我使用aws cdk设置了我的AppSync api,但没有使用他们的amplify框架。我正在尝试找出如何/是否可以在不使用amplify(即无法访问amplify codegen命令)的情况下从AppSyncschema.graphql文件生成Typescript定义。我确实尝试过安装和运行它,但我假设amplify希望文件位于某些目录中,因此失败了 我研究过,但由于AppSync使用的特殊类型(如AWSDateTime)不起作用,解决方法是发布api并从graphql端点获取模式,但这并不
amplify codegen
命令)的情况下从AppSyncschema.graphql
文件生成Typescript定义。我确实尝试过安装和运行它,但我假设amplify希望文件位于某些目录中,因此失败了
我研究过,但由于AppSync使用的特殊类型(如AWSDateTime
)不起作用,解决方法是发布api并从graphql端点获取模式,但这并不理想,也就是说,我希望能够在本地生成这些类型,而无需发布模式
这可行吗?如果有一些自定义标量(如
AWSDateTime
)不属于schema.graphql
文件,您可以创建一个单独的文件,如scalars.graphql
,然后自己添加缺少的类型定义:
scalar AWSDateTime
scalar AWSPhone
scalar AWSJSON
然后只需将一个glob传递给与这两个文件匹配的GraphQL代码生成器——它们将组合成一个模式。我还在amplify工作流之外使用CDK。我用了:“放大添加代码根——APID xxxxxxxxx”。。。它允许选择Typescript作为生成选项。