Après avoir mis à niveau angular de 9 à 10 et exécuté npm run lint
, j'ai eu cette expérience> ng lint --fix
error Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. The file does not match your project config: tsconfig.app.json. The extension for the file (.json) is non-standard. You should add "parserOptions.extraFileExtensions" to your config
Mon angular.json est:
..."@angular-devkit/build-angular": "~0.1001.1", "@angular-eslint/builder": "0.3.0-beta.1", "@angular-eslint/eslint-plugin": "0.0.1-alpha.32", "@angular-eslint/eslint-plugin-template": "0.0.1-alpha.32", "@angular-eslint/template-parser": "0.0.1-alpha.32", "@angular/cli": "~10.1.0", "@angular/compiler-cli": "~10.1.1", "@angular/language-service": "~10.1.1", "@types/file-saver": "^2.0.1", "@types/google-libphonenumber": "^7.4.19", "@types/jasmine": "~3.3.8", "@types/jasminewd2": "~2.0.3", "@typescript-eslint/eslint-plugin": "2.31.0", "@typescript-eslint/parser": "2.31.0", "codelyzer": "^5.2.2", "eslint": "^7.6.0", "eslint-config-airbnb-typescript": "^8.0.2", "eslint-config-prettier": "^6.11.0", "eslint-plugin-import": "^2.21.2", "eslint-plugin-prettier": "^3.1.4",...
Voici mon package.json - devDependencies:
..."lint": { "builder": "@angular-eslint/builder:lint", "options": { "eslintConfig": ".eslintrc.js", "tsConfig": [ "tsconfig.app.json", "tsconfig.spec.json", "e2e/tsconfig.json" ], "exclude": ["**/node_modules/**"] } },...
quand je remplace 'tsConfig' par 'lintFilePatterns', le cli dit:
Schema validation failed with the following errors: Data path "" should NOT have additional properties(tsConfig).
Que dois-je mettre à jour?
3 Réponses :
Tenez-vous-en au document https://github.com/angular-eslint/angular-eslint
, le problème vient de la version d'angular.
Actuellement, angular-eslint
supporte l'ancien typecript (<= 3.10), nous devons donc utiliser la version angulaire <10.0.6 (le 10.1.x utilise le typecript 4.0).
Je pense que je dois attendre la compatibilité, je mettrai à jour lorsque je pourrai résoudre ce conflit. Si vous rencontrez le même problème que moi, vous pouvez essayer de rétrograder l'angular vers la v10.0.6, si vous pouvez le résoudre, je suis tellement heureux si vous pouvez mettre la solution ici. :RÉ
J'ai le même problème avec Angular 8. Le problème est que le générateur dans angular-eslint ne prend pas en charge l'option tsConfig: https://github.com/angular-eslint/angular-eslint/blob/master/packages/builder/ src / schema.d.ts
Ma solution était de supprimer tsConfig juste pour le peluchage et de copier les fichiers "include" jusqu'à "lintFilePatterns". J'ai créé .eslintignore à la racine de mon projet où je répertorie tous les fichiers "d'exclusion" que j'avais (à savoir node_modules).
Mon angular.json:
node_modules/*
puis .eslintignore
..."lint": { "builder": "@angular-eslint/builder:lint", "options": { "eslintConfig": ".eslintrc.js", "lintFilePatterns": [ "**/*.spec.ts", "**/*.d.ts" ] } },...
Cela fait travailler les peluches pour moi
Pourriez-vous fournir l'intégralité de votre angular.json et de votre package.json? Peut-être une incompatibilité de version.
Oui, je l'ai mis à jour. :RÉ
Essayez de mettre à niveau votre
@angular-devkit/build-angular
vers la version0.13.0
Malheureusement, cela ne fonctionne pas. :(
Pourriez-vous fournir l'ensemble angular.json?
Impossible, mais la version angulaire que j'utilise est "^ 10.1.1" et la version dactylographiée "~ 4.0.2"
S'il existe, essayez de supprimer
"es5BrowserSupport": true
de votre angular.jsonNon, je ne l'ai pas configuré