Нишонаи !optional дар @extend дар SASS

Вақте ки селекторро васеъ мекунед, шумо метавонед хато гиред, вақте ки директиваи @extend ба таври дуруст кор накунад. Масалан, агар шумо коди зеринро дошта бошед:

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

Агар ягон селектор .main-ро дар бар нагирад, дар вақти компилят кардан хато рух хоҳад дод. Дар чунин ҳолат, мо бояд пайдарпаии селекторҳоро муттаҳид кунем, барои ин мо директиваи @extend-ро истифода мебарем.

Илова бар ин, хато хоҳад буд, агар селектор ки .main-ро дар бар мегирад ин тавр бошад: h1.main, ки ин ба сабаби зиддияти байни a ва h1 шарҳ дода мешавад.

Аз ин рӯ, дар зарурат, шумо метавонед ба директиваи @extend иҷозат диҳед, ки селекторҳои нав эҷод накунад бо ёрии нишонаи ихтиёрӣ !optional, ки пас аз селектор сабт шудааст. Масалан:

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