Oznaka !optional u @extend u SASS-u

Prilikom proširenja selektora može se javiti greška kada direktiva @extend nije ispravno izvršena. Na primer, ako imate sledeći kod:

style.scssa.info {
  @extend .main;
}

Ako nijedan selektor ne sadrži .main, prilikom kompajliranja će se desiti greška. U tom slučaju treba da spojimo sekvence selektora, za šta koristimo direktivu @extend.

Osim toga, greška će se javiti i ako selektor koji sadrži .main bude npr: h1.main, što se objašnjava konfliktom između a i h1.

Stoga, po potrebi, možete direktivi @extend dozvoliti da ne kreira nove selektore pomoću oznake za neobavezno proširenje !optional, zapisane nakon selektora. Na primer:

style.scssa.info {
  @extend .main !optional;
}