如果不使用amplify,如何从AppSync GraphQL模式生成Typescript定义?

如果不使用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端点获取模式,但这并不

我使用aws cdk设置了我的AppSync api,但没有使用他们的amplify框架。我正在尝试找出如何/是否可以在不使用amplify(即无法访问
amplify codegen
命令)的情况下从AppSync
schema.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作为生成选项。