本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定APPSYNC_JS執行時間的公用程式
AWS 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」會設定一組基本規則,供您在專案中運用:
| 規則 | 描述 |
|---|---|
| 無非同步 | 不支援非同步程序和承諾。 |
| 無等待 | 不支援非同步程序和承諾。 |
| 無類別 | 不支援類別。 |
| 無 | for 不支援 (for-of受支援的 for-in和 除外) |
| 不繼續 | 不支援 continue。 |
| 無生成器 | 不支援產生器。 |
| 無產出 | 不支援 yield。 |
| 無標籤 | 不支援標籤。 |
| 否-此 | this 不支援 關鍵字。 |
| 無嘗試 | 不支援 Try/catch 結構。 |
| 無同時 | 雖然不支援迴圈。 |
| no-disallowed-unary-operators | ++不允許 、 --和 ~ unary 運算子。 |
| no-disallowed-binary-operators | 不允許 instanceof運算子。 |
| 無承諾 | 不支援非同步程序和承諾。 |
「plugin:@aws-appsync/recommended」提供一些額外的規則,但也需要您將 TypeScript 組態新增至專案。
| 規則 | 描述 |
|---|---|
| 無遞迴 | 不允許遞迴函數呼叫。 |
| 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"] }