typescript - „Eroare de analiză: se așteaptă un identificator” la v-on:change
Am avut o problemă în care importarea unei clase pentru a fi folosită doar ca o adnotare de tip TypeScript a cauzat o eroare no-unused vars. Acest fir a spus să adaug "plugin:@typescript-eslint/recommended" în configurația eslint, ceea ce a rezolvat problema, dar a cauzat mai multe erori de parsare:
ESLint: Eroare de parsare: Identificator așteptatcare a apărut pev-on:changeESLint: Eroare de parsare: se aștepta '}'.care a apărut pecomponents: {}în@Component(...)
/App.vue:
<template>
<div id="app" style="height: 100%">
<input v-on:change="onChange"/> <!--This is the "Identifier expected" error -->
</div>
</template>
<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';
import Foo from "@/path/to/Foo";
import Bar from "@/path/to/Bar";
@Component({
components: { //This is where the `'}' expected.` error occurs
}
})
export default class App extends Vue {
onChange(e : any) : void {
let f : Foo = Bar.baz(); //This is what caused the "no-unused-vars" problem before
f.someFunc();
}
}
</script>
Iată configurația mea Eslint din package.json:
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended",
"@vue/typescript",
"plugin:@typescript-eslint/recommended"
],
"parserOptions": {
"parser": "@typescript-eslint/parser"
},
"rules": {}
}
Am încercat să activez vue/valid-v-on în rules, precum și fiecare dintre celelalte exports folosite în firul GitHub de mai sus.
Ce ar trebui să fac pentru a remedia asta?
Mulțumesc anticipat.
Editare: Am eliminat plugin:@typescript-eslint/recommended" din configurația eslint și am pus linia // eslint-disable-next-line no-unused-vars deasupra fiecărui import „neutilizat” din cod. Aceasta nu este o soluție optimă, așa că voi lăsa întrebarea deschisă.
Răspuns #1
Actualizare (după un an): Am întâlnit această eroare de câteva ori până acum și am descoperit că, de obicei, repornirea serviciului TypeScript o rezolvă.
În partea de jos dreapta a ferestrei IntelliJ Idea, faceți clic pe „Vue TypeScript”, apoi faceți clic pe „Restart TypeScript Service”. După una sau două secunde, toate „erorile” vor fi reevaluate și orice lucru marcat incorect ca eroare ar trebui să fie eliminat.
Acesta poate fi folosit și pentru a „rezolva” multe alte probleme cu verificatorul de erori TypeScript.
Răspunsul #2
Tocmai am avut același lucru. Bănuiesc că e doar o „stare proastă” a calculatorului... așa că am pus linia în comentariu și am scris singur același lucru dedesubt. Compilatorul a rămas tăcut, așa că am șters linia anterioară.
Probabil doar un bug.
