Hvorfor legger Prettier til dette semikolonet når jeg caster noe med Typescript?


Jeg bruker Typescript og Prettier, og hver gang jeg kaster noe på den første linjen i funksjonen, setter Prettier et semikolon som det første tegnet.

Hvorfor? Det virker unødvendig. Tar jeg feil?

Jeg har lest begrunnelsen, men jeg kan fortsatt ikke forstå hvorfor vi må sette det første semikolonet der.

Prettier 2.2.1 Lekeplasslenke

--parser typescript
--no-semi

Inndata:

function example() {
(this as MyType).method() // useless semicolon will be placed here
;(f as any).y = fy // the semicolon here is ok
return f
}

Utdata:

function example() {
  ;(this as MyType).method() // useless semicolon here
  ;(f as any).y = fy // the semicolon here is ok
  return f
}

Forventet oppførsel:

Det første semikolon må ikke settes.

Jeg åpnet en sak på Prettier-repositoriet, men de foreslo at jeg skulle spørre her.

***OPPDATERING:

Hvis jeg bruker Prettier-standardinnstillinger, har jeg også problemer, se dette eksempelet:

Prettier 2.2.1 Lekeplasslink

--parser typescript

Inndata:

export function inputSelect(e: MouseEvent): void {
    console.log("Test this")
    (e.target as HTMLInputElement)?.select();
}

Utdata:

export function inputSelect(e: MouseEvent): void {
  console
    .log("Test this")(e.target as HTMLInputElement)
    ?.select();
}

Forventet oppførsel:

Den bør sette semikolonet på slutten av console.log().

Relaterte artikler