Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

663
Vistas
"parserOptions.project" se ha configurado para @typescript-eslint/parser

Creé un nuevo proyecto React Native con --template typescript

Eliminé el directorio de template que venía como parte del modelo.

Luego procedí a agregar ESLint:

 module.exports = { parser: "@typescript-eslint/parser", plugins: ["@typescript-eslint"], extends: ["airbnb-typescript-prettier"] };

Sin embargo, cuando abro babel.config.js , aparece este error

Error de análisis: "parserOptions.project" se ha configurado para @typescript-eslint/parser.

El archivo no coincide con la configuración de su proyecto: /Users/Dan/site/babel.config.js .

El archivo debe estar incluido en al menos uno de los proyectos provistos.eslint

over 4 years ago · Santiago Trujillo
20 Respuestas
Responde la pregunta

0

Debe agregar ese archivo a su matriz de include tsconfig. Consulte typescript-eslint/typescript-eslint#967 para obtener más detalles.

over 4 years ago · Santiago Trujillo Denunciar

0

Diferentes reglas de pelusa para archivos JavaScript y TypeScript

El problema ocurre por una de las siguientes razones:

  1. Está utilizando una regla que requiere información de tipo y no especificó un parserOptions.project ;
  2. Usted especificó parserOptions.project , no especificó createDefaultProgram ( se eliminará en una versión futura ) y está eliminando archivos que no están incluidos en el proyecto (por ejemplo, babel.config.js , metro.config.js )

A partir de los documentos de TypeScript ESLint Parser :

parserOptions.proyecto

Esta opción le permite proporcionar una ruta al tsconfig.json de su proyecto. Esta configuración es necesaria si desea utilizar reglas que requieran información de tipo.

(...)

Tenga en cuenta que si se especifica esta configuración y createDefaultProgram no, solo debe litear los archivos que se incluyen en los proyectos según lo definido por los archivos tsconfig.json proporcionados. Si su configuración existente no incluye todos los archivos que le gustaría eliminar, puede crear un tsconfig.eslint.json separado.

Para resolverlo, actualice su configuración de ESLint para usar reglas de TypeScript solo en archivos de TypeScript:

 { // ... parser: '@typescript-eslint/parser', plugins: ["@typescript-eslint"], overrides: [ { files: ['*.ts', '*.tsx'], // Your TypeScript files extension // As mentioned in the comments, you should extend TypeScript plugins here, // instead of extending them outside the `overrides`. // If you don't want to extend any rules, you don't need an `extends` attribute. extends: [ 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-requiring-type-checking', ], parserOptions: { project: ['./tsconfig.json'], // Specify it only for TypeScript files }, }, ], // ... }

Puede leer más sobre la configuración de overrides en los documentos oficiales: ¿Cómo funcionan las anulaciones?


No lint un archivo específico

Si no desea borrar el archivo que se menciona en el error (por ejemplo, babel.config.js ), puede ignorarlo agregando su nombre al archivo .eslintignore :

 babel.config.js

De todos modos, el paso anterior (sobre la anulación de la configuración de los archivos TypeScript) es importante en caso de que su proyecto contenga archivos JavaScript y TypeScript que desee eliminar.

También puede crear otras anulaciones para diferentes situaciones, por ejemplo, una configuración diferente para los archivos de prueba, ya que puede usar las dependencias del desarrollador y ejecutarse en el entorno del node , en lugar del browser .

over 4 years ago · Santiago Trujillo Denunciar

0

Tuve este problema en VsCode cuando estaba abriendo mi proyecto demasiado alto en la estructura de carpetas. Una solución extraña pero funcionó.

En mi ejemplo, el proyecto de funciones de Firestore para express en .ts, tuve que abrirlo desde la carpeta de funciones que creó.

Debería haber notado que era este tipo de problema ya que 'npm run-script lint' nunca devolvió un error.

over 4 years ago · Santiago Trujillo Denunciar

0

Agregue una línea en ".eslintignore":

.eslintrc.js

over 4 years ago · Santiago Trujillo Denunciar

0

Puede crear un archivo de configuración de TypeScript independiente ( tsconfig.eslint.json ) destinado a la configuración de eslint . Ese archivo amplía la configuración de tsconfig y las configuraciones include la clave para los archivos que se deben eliminar.

.eslint.js :

 // ... parserOptions: { // ... project: "./tsconfig.eslint.json", // ... }, // ...

tsconfig.eslint.json :

 { "extends": "./tsconfig.json", "include": [ // ... "babel.config.js" ] }

O si quiere ignorarlo, puede ponerlo en .eslintignore .

.eslintignore :

 // ... babel.config.js
over 4 years ago · Santiago Trujillo Denunciar

0

Utilizo un enlace simbólico desde la carpeta de mi proyecto que apunta a mi carpeta de inicio:

/opt/project/workspace => ~/worspace

Al abrir el VSCode usando la ruta del enlace simbólico ~/workspace el error siempre persiste.

Abrir VSCode usando la ruta original: /opt/project/workspace resuelve el problema.

Esto no debería ser un problema, pero por ahora lo es.

over 4 years ago · Santiago Trujillo Denunciar

0

En mi configuración de ESLint tengo la siguiente configuración:

.eslintrc.js

 module.exports = { root: true, env: { node: true, }, globals: { Promise: "readonly" }, parser: "@typescript-eslint/parser", parserOptions: { sourceType: "module", tsconfigRootDir: __dirname, project: ["./tsconfig.eslint.json"], }, plugins: ["@typescript-eslint"], extends: [ "eslint:recommended", "prettier/@typescript-eslint", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", ], }

Actualizar La parte clave de la solución es esta:

 parser: "@typescript-eslint/parser"

y esto:

 parserOptions: { sourceType: "module", tsconfigRootDir: __dirname, project: ["./tsconfig.eslint.json"], // could be tsconfig.json too }

No olvide incluir ese archivo o el directorio del archivo en la matriz de include de tsconfig.json.

over 4 years ago · Santiago Trujillo Denunciar

0

En nuestro caso, tenemos múltiples .eslintrc y múltiples tsconfig.json en nuestro árbol de directorios. (Uno para el servidor en . y otro para el cliente React en ./client ).

Esto funcionó bien con la CLI, pero no con el complemento de VS Code.

La solución fue establecer el valor del project ./client/.eslintrc para que fuera relativo a la raíz , no al archivo .eslintrc. Después de cambiarlo de "./tsconfig.json" a "./client/tsconfig.json", el IDE funciona como se esperaba.

over 4 years ago · Santiago Trujillo Denunciar

0

  1. Ejecute npm i -D @types/node

  2. Incluir compatibilidad con texto mecanografiado para archivos *.config.js :

tsconfig.json :

 { "include": [ "**/*.config.js" // for *.config.js files ] }

¡Y luego recarga tu IDE!

over 4 years ago · Santiago Trujillo Denunciar

0

Para mí, el problema se origina en algunos archivos ignorados en tsconfig usando la propiedad de exclude , pero eslint no los ignora.

Por lo general, si uno quiere que TSC ignore los archivos, entonces se aplicará lo mismo a eslint. así que simplemente copie y pegue el valor de exclude en la configuración de .tsconfig en la propiedad ignorePatterns en la configuración de .eslintrc .

over 4 years ago · Santiago Trujillo Denunciar

0

Estaba teniendo el mismo problema al agregar '@typescript-eslint/prefer-nullish-coalescing': 'error' a .eslintrc.js .

Después de mucho ensayo y error, se me ocurrió esta solución, que funciona bien en mi caso:

 module.exports = { ... overrides: [ { files: ['*.ts', '*.tsx'], parserOptions: { // this setting is required to use rules that require type information project: './tsconfig.json', }, rules: { '@typescript-eslint/prefer-nullish-coalescing': 'error', }, }, ], }
over 4 years ago · Santiago Trujillo Denunciar

0

Simplemente indique a eslint que los ignore agregando la opción ignorePatterns a su .eslintrc.js :

 module.exports = { root: true, parser: '@typescript-eslint/parser', parserOptions: { project: './tsconfig.json', }, ignorePatterns: ["babel.config.js"], ...

Como no tiene mucho valor limpiar los archivos de configuración de su proyecto, puede ignorarlos con seguridad.

Además, no los haría parte de su tsconfig.json ni crearía un archivo especial tsconfig.eslint.json , solo para fines de pelusa.

over 4 years ago · Santiago Trujillo Denunciar

0

¿Este error proviene de la extensión VSCode? ¿El error tiene una ruta relativa que va al nivel superior aunque esté en la misma carpeta (o subcarpeta) (como se muestra en el mensaje de error a continuación)?

 Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. The file does not match your project config: ../../../../../home/<ommitted>/projects/floor-planner/app/src/App.vue. The file must be included in at least one of the projects provided.

Si es así, compruebe si también persiste al utilizar la CLI.

Desde la raíz de su proyecto, puede ejecutar eslint . . Si no se encuentran esos errores, es muy probable que haya abierto el proyecto a través de un enlace simbólico .

A partir de agosto de 2021, la extensión Eslint no funciona con Symlinks.

Desde el directorio de su proyecto, ejecute pwd -P para obtener la ruta absoluta.

En mi caso, esto da como resultado

 ~/projects/floor-planner/app: pwd -P /media/projects/2021-Q3/floor-planner/app

Abra el proyecto a través de este camino.

Eslint ya no debería mostrar el error.

over 4 years ago · Santiago Trujillo Denunciar

0

Establezca parserOptions en .eslintrc como se muestra a continuación

 "parserOptions": { "ecmaFeatures": { "jsx": true }, "ecmaVersion": 2019, "sourceType": "module" },
over 4 years ago · Santiago Trujillo Denunciar

0

Pasé mucho tiempo en un problema como este.

Había creado un jest.config.ts en lugar de jest.config.js , por lo que arrojaba este error exacto de eslint🤦

over 4 years ago · Santiago Trujillo Denunciar

0

Me encontré con este problema hoy, y ninguna de las soluciones anteriores ayudó. El problema que tuve fue que tenía dos archivos en el mismo directorio que compartían el mismo nombre de archivo (sin extensión). Por ejemplo, src/foo.ts y src/Foo.tsx . Cambiar el nombre de uno de los archivos solucionó el error de linter. Consulte @typescript-eslint/parser#955 .

over 4 years ago · Santiago Trujillo Denunciar

0

Solo necesitaba agregar la ruta al nuevo tsconfig.json en la matriz del project y el script eslint y el problema desapareció.

tsconfig.json :

 project: ["./newfolder/tsconfig.json"]

package.json :

 "eslint": "eslint -c ./.eslintrc.js './newfolder/**/*.ts'"
over 4 years ago · Santiago Trujillo Denunciar

0

Simplemente agregue el siguiente código dentro del archivo .eslintrc.js.

 ignorePatterns: ['.eslintrc.js']
over 4 years ago · Santiago Trujillo Denunciar

0

Mi problema en PHPStorm es que tenía configurado el director de trabajo:

ingrese la descripción de la imagen aquí

Aclaré eso y todo funcionó :\

over 4 years ago · Santiago Trujillo Denunciar

0

El error significa que hay un archivo que se puede compilar pero que no pertenece a la estructura del proyecto definida actualmente. hay varias soluciones:

Si no le importa si el archivo está compilado (es decir, archivos de configuración y demás)

  • agregue el nombre de archivo a .eslintignore

o

  • agregue el archivo o patrón de archivo al archivo .eslintrc.js
 ignorePatterns: ["babel.config.js"] // or ignorePatterns: ["**/*.config.js"]

Quieres que el archivo se compile

agregue el archivo, la carpeta o el patrón al archivo tsconfig.json

 include": [ "src", "other_src", ]

NOTA: algunos cambios necesitan reiniciar el IDE para que surtan efecto

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda