recherche

Maison  >  Questions et réponses  >  le corps du texte

eslint traite mes fichiers *.ts comme javascript dans un projet qui a également vue

<p>Je développe un projet Web en utilisant TypeScript et Vue. Après avoir lu la documentation de typescript-eslint et eslint-plugin-vue, j'ai résolu la configuration eslint suivante : </p> <pre class="brush:php;toolbar:false;">module.exports = { racine : vrai, env : { navigateur : vrai, es2021 : vrai, }, étend : [ "eslint : recommandé", "plugin:vue/vue3-essential", "plugin :@typescript-eslint/recommandé", "plugin :@typescript-eslint/recommended-requiring-type-checking", "plus jolie", ], analyseur : "vue-eslint-parser", parserOptions : { analyseur : "@typescript-eslint/parser", projet : ["./tsconfig.json"], tsconfigRootDir : __dirname, extraFileExtensions : [".vue"], }, remplacements : [], parserOptions : { ecmaVersion : "dernière", Type de source : "module", }, plugins : ["vue", "@typescript-eslint"], };</pré> <p>Mes fichiers vue sont analysés correctement, mais mes fichiers ts contiennent des erreurs de charpie déraisonnables. Il semble qu'ils soient vérifiés par rapport à la syntaxe javascript. Comme indiqué ci-dessous : </p> <p>Si je supprime <code>parserOptions</code> et que je change l'analyseur en <code>@typescript-eslint/parser</code>, le fichier ts se lint correctement, mais les peluches du fichier vue se cassent . ≪/p > <p>Est-ce que quelqu'un sait ? </p>
P粉739706089P粉739706089458 Il y a quelques jours478

répondre à tous(2)je répondrai

  • P粉236743689

    P粉2367436892023-09-03 13:09:12

    Pour autant que je sache, vous avez deux options :

    1. volonté解析器:“vue-eslint-parser”更改为@typescript-eslint/parser

    2. Ajoutez un remplacement pour les fichiers .ts et définissez l'analyseur sur @typescript-eslint/parser

    répondre
    0
  • P粉038856725

    P粉0388567252023-09-03 00:38:58

    Je suppose que je suis trop fatigué ou trop vieux, de toute façon, le problème c'est qu'il y a deux parserOptions sections dans le même fichier charpie. Ceci est la version finale de travail :

    module.exports = {
      root: true,
      env: {
        browser: true,
        es2021: true,
      },
      extends: [
        "eslint:recommended",
        "plugin:vue/vue3-essential",
        "plugin:@typescript-eslint/recommended",
        "plugin:@typescript-eslint/recommended-requiring-type-checking",
        "prettier",
      ],
      parser: "vue-eslint-parser",
      parserOptions: {
        parser: "@typescript-eslint/parser",
        project: ["./tsconfig.json"],
        ecmaVersion: "latest",
        sourceType: "module",
        extraFileExtensions: [".vue"],
      },
    //  parserOptions: {
    //    ecmaVersion: "latest",
    //    sourceType: "module",
    //  },
      plugins: ["vue", "@typescript-eslint"],
    };
    

    répondre
    0
  • Annulerrépondre