为 APPSYNC_JS 运行时配置实用程序
Amazon AppSync 提供了两个库,可以帮助使用 APPSYNC_JS 运行时系统开发解析器:
-
@aws-appsync/eslint-plugin- 在开发过程中快速捕获并修复问题。 -
@aws-appsync/utils- 在代码编辑器中提供类型验证和自动完成功能。
配置 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-in 和 for-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。 |
"plugin:@aws-appsync/recommended" 提供一些额外的规则,但还要求您将 TypeScript 配置添加到项目中。
| 规则 | 描述 |
|---|---|
| no-recursion | 不允许使用递归函数调用。 |
| no-disallowed-methods | 不允许使用某些方法。请参阅参考以了解支持的全套内置函数。 |
| no-function-passing | 不允许将函数作为函数参数传递给函数。 |
| no-function-reassign | 无法重新分配函数。 |
| no-function-return | 函数不能是函数的返回值。 |
要将插件添加到您的项目中,请按照 ESLint 入门
$ npm install @aws-appsync/eslint-plugin
在 .eslintrc.{js,yml,json} 文件中,将 "plugin:@aws-appsync/base" 或 "plugin:@aws-appsync/recommended" 添加到 extends 属性中。下面的代码片段是 JavaScript 的基本示例 .eslintrc 配置:
{ "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"] }