

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configurazione delle utilità per il runtime `APPSYNC_JS`
<a name="utility-resolvers"></a>

AWS AppSync fornisce due librerie che facilitano lo sviluppo di resolver con il runtime: `APPSYNC_JS` 
+ `@aws-appsync/eslint-plugin`- Rileva e corregge rapidamente i problemi durante lo sviluppo.
+ `@aws-appsync/utils`- Fornisce la convalida dei tipi e il completamento automatico negli editor di codice.

## Configurazione del plugin eslint
<a name="utility-resolvers-configuring-eslint-plugin"></a>

[ESLint](https://eslint.org/)è uno strumento che analizza staticamente il codice per trovare rapidamente i problemi. Puoi eseguirlo ESLint come parte della tua pipeline di integrazione continua. `@aws-appsync/eslint-plugin`è un ESLint plugin che rileva la sintassi non valida nel codice quando sfrutta il runtime. `APPSYNC_JS` Il plugin consente di ottenere rapidamente un feedback sul codice durante lo sviluppo senza dover inviare le modifiche al cloud.

`@aws-appsync/eslint-plugin`fornisce due set di regole che è possibile utilizzare durante lo sviluppo. 

**«plugin: @aws -appsync/base»** configura un set di regole di base che puoi sfruttare nel tuo progetto: 


| Regola | Description | 
| --- | --- | 
| no-async | I processi e le promesse asincroni non sono supportati. | 
| senza attesa | I processi e le promesse asincroni non sono supportati. | 
| nessuna classe | Le classi non sono supportate. | 
| no per | fornon è supportato (ad eccezione di for-in efor-of, che sono supportati) | 
| no-continue | continue non è supportato. | 
| senza generatori | I generatori non sono supportati. | 
| senza rendimento | yield non è supportato. | 
| senza etichette | Le etichette non sono supportate. | 
| no-questo | thisla parola chiave non è supportata. | 
| nessun tentativo | La struttura TRY/catch non è supportata. | 
| nel giro di poco | I loop While non sono supportati. | 
| no-disallowed-unary-operators | \$1\$1--, e gli operatori \$1 unari non sono consentiti. | 
| no-disallowed-binary-operators | L'instanceofoperatore non è consentito. | 
| nessuna promessa | I processi e le promesse asincroni non sono supportati. | 

**«plugin: @aws -appsync/recommended»** fornisce alcune regole aggiuntive ma richiede anche l'aggiunta di configurazioni al progetto. TypeScript 


| Regola | Description | 
| --- | --- | 
| nessuna ricorsione | Le chiamate di funzioni ricorsive non sono consentite. | 
| no-disallowed-methods | Alcuni metodi non sono consentiti. Vedi il [riferimento](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-util-reference-js.html) per un set completo di funzioni integrate supportate. | 
| no-function-passing | Non è consentito passare funzioni come argomenti di funzione alle funzioni. | 
| no-function-reassign | Le funzioni non possono essere riassegnate. | 
| no-function-return | Le funzioni non possono essere il valore restituito dalle funzioni. | 

Per aggiungere il plugin al tuo progetto, segui i passaggi di installazione e utilizzo in [Getting Started with ESLint](https://eslint.org/docs/latest/user-guide/getting-started#installation-and-usage). Quindi, installa il [plugin](https://www.npmjs.com/package/@aws-appsync/eslint-plugin) nel tuo progetto usando il gestore dei pacchetti del progetto (ad esempio, npm, yarn o pnpm):

```
$ npm install @aws-appsync/eslint-plugin
```

Nel tuo `.eslintrc.{js,yml,json}` file, aggiungi **«plugin: @aws -appsync/base» o **«plugin:** @aws -appsync/recommended» alla** proprietà. `extends` Lo snippet riportato di seguito è un esempio di configurazione di base per: `.eslintrc` JavaScript 

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

Per utilizzare il set di regole **«plugin: @aws -appsync/recommended»**, installa la dipendenza richiesta:

```
$ npm install -D @typescript-eslint/parser
```

Quindi, crea un file: `.eslintrc.js`

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