2.5.16
https://codesandbox.io/s/6jnlpno3lw
Dieses Problem tritt auf, wenn das Stammelement nicht eingerückt ist und der Schnurrbart in mehrere Zeilen aufgeteilt ist.
<template>
<div>
<p>{{
myVar
}}</p>
</div>
</template>
Nur wenn das Wurzelelement eingerückt ist, wird der Schnurrbart korrekt gerendert.
<template>
<div>
<p>{{
myVar
}}</p>
</div>
</template>
Was auch funktioniert, ist, wenn Schnurrbart in eine einzelne Zeile gesetzt wird und das Wurzelelement nicht eingerückt wird.
<template>
<div>
<p>{{ myVar }}</p>
</div>
</template>
Der Schnurrbart sollte Daten binden
Der Schnurrbart wird im Klartext gerendert
Ich wollte nur meinen Code verschönern, also teilte ich den Schnurrbart in mehrere Zeilen und entfernte den Einzug des Wurzelelements.
funktioniert mit einem einzelnen Leerzeichen zwischen <template>
und root element
:
<template> <p>{{
myVar
}}</p></template>
tut nicht ohne Leerzeichen zwischen ihnen:
<template><p>{{
myVar
}}</p></template>
Warum sollte jemand seinen Code so schreiben?
@syntacticsolutions Das spielt keine Rolle, Tatsache ist, dass es ein Fehler ist, oder?
Danke @DanielSharkov , es sollte ein Fehler sein.
Die Hauptursache für unterschiedliches Verhalten beim Einrücken ist unten: https://github.com/yyx990803/de-indent/blob/master/index.js#L17 -L24
if (c === ' ' || c === '\t') {
type = c
cur = count(line, type)
if (cur < min) {
min = cur
}
} else {
return str
Vielleicht sollten wir \ r hinzufügen? Muster in der Textinterpolation regexp:
Hilfreichster Kommentar
Warum sollte jemand seinen Code so schreiben?