为 APPSYNC_JS 运行时配置实用程序 - Amazon AppSync GraphQL
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

APPSYNC_JS 运行时配置实用程序

Amazon AppSync 提供了两个有助于使用APPSYNC_JS运行时开发解析器的库:

  • @aws-appsync/eslint-plugin - 在开发过程中快速捕获并修复问题。

  • @aws-appsync/utils - 在代码编辑器中提供类型验证和自动完成功能。

配置 ESLint 插件

ESLint是一种静态分析代码以快速发现问题的工具。您可以 ESLint 作为持续集成管道的一部分运行。 @aws-appsync/eslint-plugin是一个 ESLint 插件,可在利用APPSYNC_JS运行时时时捕获代码中的无效语法。通过使用该插件,您可以在开发过程中快速获得有关代码的反馈,而无需将更改推送到云端。

@aws-appsync/eslint-plugin 提供了两个可以在开发过程中使用的规则集。

"plugin:@aws-appsync/base" 配置您可以在项目中使用的一组基本规则:

规则 描述
no-async 不支持异步过程和 Promise。
no-await 不支持异步过程和 Promise。
no-classes 不支持类。
no-for 不支持 for(支持的 for-infor-of 除外)
no-continue 不支持 continue
no-generators 不支持生成器。
no-yield 不支持 yield
no-labels 不支持标签。
no-this 不支持 this 关键字。
no-try 不支持 try/catch 结构。
no-while 不支持 while 循环。
no-disallowed-unary-operators 不允许使用 ++--~ 一元运算符。
no-disallowed-binary-operators 不允许使用 instanceof 运算符。
no-promise 不支持异步过程和 Promise。

“插件:@aws-appsync/推荐” 提供了一些额外的规则,但也要求你为项目添加 TypeScript 配置。

规则 描述
no-recursion 不允许使用递归函数调用。
no-disallowed-methods 不允许使用某些方法。请参阅参考以了解支持的全套内置函数。
no-function-passing 不允许将函数作为函数参数传递给函数。
no-function-reassign 无法重新分配函数。
no-function-return 函数不能是函数的返回值。

要将插件添加到您的项目中,请按照 “入门” 中的安装和使用步骤进行操作 ESLint。然后,使用项目包管理器(例如 npm、yarn 或 pnpm)在项目中安装插件

$ npm install @aws-appsync/eslint-plugin

.eslintrc.{js,yml,json} 文件中,将 "plugin:@aws-appsync/base""plugin:@aws-appsync/recommended" 添加到 extends 属性中。以下代码段是以下内容的基本示例.eslintrc配置: JavaScript

{ "extends": ["plugin:@aws-appsync/base"] }

要使用 "plugin:@aws-appsync/recommended" 规则集,请安装所需的依赖项:

$ npm install -D @typescript-eslint/parser

然后,创建一个 .eslintrc.js 文件:

{ "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": 2018, "project": "./tsconfig.json" }, "extends": ["plugin:@aws-appsync/recommended"] }