`!default`-flaggan i SASS
Den här artikeln förklarar flaggan !default
i SASS.
Vi kommer att förklara flaggan !default
i detalj och visa hur man använder den med praktiska exempel.
YouTube Video
!default
-flaggan i SASS
!default
-flaggan i SASS är ett viktigt verktyg för att förbättra modularitet och återanvändbarhet av stilmallar. Genom att använda denna flagga kan du ange standardvärden för variabler samtidigt som variabler definierade på andra ställen får företräde. Här förklarar vi !default
-flaggan i detalj och visar dess användning med praktiska exempel.
!default
-flaggan är en SASS-specifik funktion som används för att ange standardvärden för variabler. Genom att lägga till denna flagga uppnås följande beteende:.
-
Angivande av standardvärden Värdet anges endast om variabeln inte är definierad någon annanstans.
-
Styrning av företräde Om variabeln redan är definierad kommer dess värde inte att skrivas över.
Denna funktion är särskilt användbar när man bygger moduler och bibliotek. Användare kan ange egna värden, men om inga anges kommer standardvärdena att användas.
Grundexempel
Följande kod visar grundläggande användning av !default
-flaggan.
1// _variables.scss
2$primary-color: blue !default;
- Definiera standardvariabeln
$primary-color
med hjälp av flaggan!default
.
1// main.scss
2@use 'variables' with (
3 $primary-color: red
4);
5
6body {
7 background-color: variables.$primary-color;
8}
- Importera variabler med
@use
och åsidosätt$primary-color
medwith
.
Utdatakod (CSS)
1body {
2 background-color: red;
3}
- I det här exemplet, eftersom
$primary-color
är satt tillred
imain.scss
, kommer detblue
som är definierat i_variables.scss
inte att användas.
När en variabel är odefinierad
Om variabeln inte är definierad i main.scss
används standardvärdet.
1// main.scss
2@use 'variables';
3
4body {
5 background-color: variables.$primary-color;
6}
- Eftersom variabeln importeras utan åsidosättning, tillämpas standardvärdet
blue
för$primary-color
som är definierat i_variables.scss
.
Utdatakod (CSS)
1body {
2 background-color: blue;
3}
Användning i inbäddade moduler
Att använda !default
inom moduler möjliggör flexibel anpassning.
1// _variables.scss
2$primary-color: blue !default;
3$button-color: blue !default;
- Definiera
$primary-color
och$button-color
med flaggan!default
.
1// _buttons.scss
2@use 'variables';
3
4.button {
5 color: variables.$button-color;
6}
- Importera modulen
variables
och ange färgen på.button
med variabeln$button-color
.
1// main.scss
2@use 'variables' with (
3 $button-color: orange
4);
5
6@use 'buttons';
- Använd
@use
medwith
för att åsidosätta$button-color
medorange
, och använd modulenbuttons
.
Utdatakod (CSS)
1.button {
2 color: orange;
3}
- På så sätt kan moduler ange standardvärden samtidigt som användares egna inställningar respekteras.
Att tänka på
När du använder !default
-flaggan bör du tänka på följande:.
-
Välj lämpliga standardvärden Standardvärden bör väljas så att de täcker vanliga användningsfall.
-
Medveten utformning Använd konsekventa variabelnamn och undvik konflikter med andra moduler.
-
Ordning av kontroll För att
!default
-flaggan ska fungera som tänkt måste ordningen mellan åsidosättningar av variabler hanteras korrekt.
Praktiska scenarier
Byte av tema
Till exempel, när du skapar ett bibliotek som stöder teman kan du använda !default
för att erbjuda anpassningsbara standardvärden.
1// _theme.scss
2$background-color: white !default;
3$text-color: black !default;
4
5body {
6 background-color: $background-color;
7 color: $text-color;
8}
- Definiera
$background-color
och$text-color
med flaggan!default
för temat, och tillämpa dem påbody
.
1// main.scss
2@use 'theme' with (
3 $background-color: #f0f0f0
4);
- Anpassa temat genom att åsidosätta
$background-color
med@use
ochwith
.
Utdatakod (CSS)
1body {
2 background-color: #f0f0f0;
3 color: black;
4}
Återanvändbara komponenter
I en återanvändbar knappkomponent kan du ange standardstilar samtidigt som användare kan åsidosätta färgen.
1// _buttons.scss
2$button-bg: #007bff !default;
3$button-color: #ffffff !default;
4
5.button {
6 background-color: $button-bg;
7 color: $button-color;
8 padding: 0.5em 1em;
9 border-radius: 4px;
10}
- Definiera standardbakgrund och textfärger för knappar med
!default
och tillämpa stilarna.
1// main.scss
2@use 'buttons' with (
3 $button-bg: #28a745
4);
- Anpassa knappfärgen genom att åsidosätta
$button-bg
med@use
ochwith
.
Utdatakod (CSS)
1.button {
2 background-color: #28a745;
3 color: #ffffff;
4 padding: 0.5em 1em;
5 border-radius: 4px;
6}
Sammanfattning av !default
-flaggan
!default
-flaggan i SASS är ett kraftfullt verktyg när du bygger moduler och bibliotek. Den ökar återanvändbarheten samtidigt som den möjliggör flexibel anpassning.
Du kan följa med i artikeln ovan med hjälp av Visual Studio Code på vår YouTube-kanal. Vänligen kolla även in YouTube-kanalen.