Určitě každý z vás zná @import
v Sass, už ale málo kdo ví, že Sass označil @import
za deprecated. Dokonce, píší, že v nasledujících letech jej úplně odstraní. Co teda máme používat místo @import?
Řešení je @use
a @forward
.
Co je špatně s @import?
Import má několik vážných problémů.
@import
dělá všechny proměnné, funkce a mixiny globálně dostupnými, díky tomu je obtížně předvídatelné, kde je co definováno- jelikož je vše globální, může snadno dojít ke kolizi s názvem, knižnice třetích stran přidávají často kvůli tomu prefixy
@extend
pravidla jsou taktéž globální, což znamená, že je ťežko predikováno jaká pravidla vlastně budou @extendována- použití @import nám generuje vysoký time pro kompilaci
- za použití @import není způsob jak definovat v SASS privátní / scoped styly
Systém @use
a @forward
všechny zmíněné problémy řeší.
Pojďme se podívat na několik praktických ukázek jak funguje @use
a @forward
v praxi a ukážeme si příklady na SASS 7-1 architektuře, o které jsme již na ForDevs psali.
Premium obsahZískej premium obsah a osobní přístup
Článek je součástí premium systému, podívej se na výhody premium účtu. Vytvářme kvalitný vzdělávací obsah, vedeme lidi k jejich kariérním cilům a udržujeme je v dění novinek ve webovém světě. Díky premium systému podpoříš náš projekt získaš řadu výhod:
Premium
- přístup k premium obsahu (články, návody, vzdělávací materiály...)
- nastartujeme tvoji IT kariéru
- dostaneš osobního mentora
- zašli nám kód a my ti uděláme code-review (kóderské výzvy)
- přístup do zamčeného kanálu na Discordu
- pomůžeme s prací
- budeme ve spojení - ptej se na co potřebuješ