Language-tools: zeigt Fehler

Erstellt am 18. Juni 2020  ·  3Kommentare  ·  Quelle: sveltejs/language-tools

Beschreibe den Fehler

<!doctype html> zeigt Fehler an. Sieht im Zusammenhang mit https://github.com/sveltejs/language-tools/issues/143 aus.

Fortpflanzen

CleanShot 2020-06-18 at 09 50 11@2x
CleanShot 2020-06-18 at 09 54 13@2x

<!doctype html />
<html lang="en">
  <slot name="head" />
  <body>
    <slot name="view" />
    <slot name="script" />
  </body>
</html>

Das Entfernen des Doctype behebt das Problem. Ich habe auch <!doctype html> ausprobiert, aber die automatische Formatierung fügt trotzdem <!doctype html /> .

Erwartetes Verhalten

Keine Fehler. Scheint in svelte behoben zu sein: https://github.com/sveltejs/svelte/issues/336

Ich konnte es nicht in der Svelte REPL reproduzieren (ich habe einen anderen Fehler erhalten), aber ich denke, das sollte mit SSR funktionieren.

System (bitte folgende Angaben machen):

  • Betriebssystem: OSX
  • IDE: VSCode
  • Plugin / Paket: Svelte Beta v99.0.46
bug good first issue

Hilfreichster Kommentar

@dummdidumm Auf Ihren Vorschlag hin habe ich eine Pull-Anfrage # 213 erstellt.

Alle 3 Kommentare

Es ist ein svelte2tsx Problem. Die Ausgabe der angegebenen Eingabe ist:

<></>;function render() {
<><!doctype html />
<html lang="en">
  <slot name="head" />
  <body>
    <slot name="view" />
    <slot name="script" />
  </body>
</html></>
return { props: {}, slots: {head: {}, view: {}, script: {}} }}

export default class {
    $$prop_def = __sveltets_partial(render().props)
    $$slot_def = render().slots
}

<!doctype html /> ist kein gültiges jsx-Tag, daher werden diese Syntaxfehler ausgelöst. Ich denke, die beste Lösung wäre, innerhalb von svelte2tsx zu prüfen, ob eine solche Zeichenfolge am Anfang des Dokuments vorhanden ist, und sie einfach während der Konvertierung in jsx zu entfernen, wobei ein regulärer Ausdruck verwendet wird, der prüft, ob es ein Tag gibt, das mit ihm beginnt Anfang".

@dummdidumm Auf Ihren Vorschlag hin habe ich eine Pull-Anfrage # 213 erstellt.

Danke @skippednote ! Fix wird in ca. 20 Stunden verfügbar sein.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen