ホームページ  >  に質問  >  本文

eslint は、vue もあるプロジェクトの *.ts ファイルを JavaScript として扱います

<p>typescript と vue を使用して Web プロジェクトを開発しています。 typescript-eslint と eslint-plugin-vue のドキュメントを読んだ後、次の eslint 設定を解決しました。 <pre class="brush:php;toolbar:false;">module.exports = { ルート: true、 環境: { ブラウザ: true、 es2021: 本当、 }、 拡張します: [ "eslint: 推奨"、 "プラグイン:vue/vue3-essential"、 "プラグイン:@typescript-eslint/推奨"、 "plugin:@typescript-eslint/recommended-requiring-type-checking", 「もっときれいに」、 ]、 パーサー: "vue-eslint-parser", パーサーオプション: { パーサー: "@typescript-eslint/parser", プロジェクト: ["./tsconfig.json"]、 tsconfigRootDir: __ディレクトリ名, extraFileExtensions: [".vue"]、 }、 オーバーライド: []、 パーサーオプション: { ecmaVersion: "最新", ソースタイプ: "モジュール"、 }、 プラグイン: ["vue"、"@typescript-eslint"]、 };</pre> <p>vue ファイルは正しく解析されていますが、ts ファイルには不当な lint エラーが発生します。 JavaScriptの構文をチェックしているようです。以下に示すように:</p> <p><code>parserOptions</code> を削除し、パーサーを <code>@typescript-eslint/parser</code> に変更すると、ts ファイルは正しく lint しますが、vue ファイルの lint は壊れます。 。 </p> <p>誰か知っていますか? </p>
P粉739706089P粉739706089383日前412

全員に返信(2)返信します

  • P粉236743689

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

    私の知る限り、選択肢は 2 つあります:

    1. パーサー: "vue-eslint-parser" @typescript-eslint/parser

      に変更します。
    2. .ts ファイルのオーバーライドを追加し、パーサーを @typescript-eslint/parser

      に設定します。

    返事
    0
  • P粉038856725

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

    疲れすぎているのか、年をとりすぎているのでしょう。とにかく、問題は、同じ lint ファイル内に 2 つの parserOptions セクションがあることです。これが最終動作バージョンです:

    リーリー

    返事
    0
  • キャンセル返事