Optimize adjacent static parts+fields
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- babel, javascript
Rechercherichtung
Beginne mit dem verknüpften Tagged Templates-Gist und dem Einstiegspunkt babel-plugin-transform-jsx-to-htm. Vergleiche die aktuellen und optimierten Ausgaben, die für Literal-Felder und verschachtelte Arrays gezeigt werden; abgeschlossen ist die Aufgabe, wenn das Plugin für beide Beispiele die angeforderte optimierte Ausgabe erzeugt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
I've been toying around with optimizing Tagged Templates by merging literal field values (strings, numbers and booleans) into their adjacent static part and collapsing the adjacent static parts into a single part:
// input:
<div class={"foo"}>hello</div>
<button id={1} />
// current output:
html`<div class=${"foo"}>hello</div>`
html `<button id=${1} />`
// optimized output:
html`<div class="foo">`
html`<button id=1 />`
It'd be really neat to get this behavior into babel-plugin-transform-jsx-to-htm, since additional assumptions could be made about nested Arrays:
const color = 'red';
// input:
<style jsx>{`
.foo { color: ${color}; }
`}</style>
// current output:
html`
<style jsx>${`
.foo { color: ${color}; }
`}</style>
`
// optimized output:
html`
<style jsx>
.foo { color: ${color}; }
</style>
`
Thoughts?
- Vorherrschende Sprache
- JavaScript
- Sterne
- 9k
- Forks
- 181
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus developit/htm
-
Sarthak Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 1/100
-
Tugas Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 10/100
-
Tugas Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 1/100
-
type checking templates Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 20/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
Ähnliche Issues
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Improve Title Support Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
georgestephanis/p2026#40 ·
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Margaret-Petersen/food-delivery-app-clone-react-native#1981 ·