Stilare i componenti
Gestisci gli stili con CSS locale, CSS modules e Shadow DOM.
CSS sul componente
Ogni componente può esporre una proprietà statica css.
function Badge({ label }) {
return html`<span class="badge">${label}</span>`;
}
Badge.css = `
.badge {
display: inline-flex;
padding: 0.35rem 0.65rem;
border-radius: 999px;
background: #573ef6;
color: white;
}
`;CSS modules integrati
Per default Wompo può rendere i nomi delle classi più specifici. Le classi generate arrivano in styles.
function Card({ styles: s, title }) {
return html`
<article class=${s.card}>
<h2>${title}</h2>
</article>
`;
}
Card.css = `
.card {
border: 1px solid #e7e4f3;
border-radius: 8px;
padding: 1rem;
}
`;Shadow DOM
Lo Shadow DOM non è obbligatorio. Usalo quando vuoi isolamento forte da CSS esterni o quando stai pubblicando widget da incorporare in pagine non controllate.
defineWompo(UserWidget, {
name: 'user-widget',
shadow: true
});Il default senza Shadow DOM rende più semplice integrare librerie terze, stili globali e query DOM. Attiva Shadow DOM quando l'isolamento è più importante della semplicità.
Esempio completo
Crea una Todo app con Wompo e applica props, eventi, stato e rendering di liste.
Custom hooks
Impara a creare hook personalizzati con Wompo.