Ich bin einige SCSS Refactoring, und ich habe eine Verschachtelung Problem mit BEM-Syntax in meinen SCSS-Dateien.Elegant Targeting ein Element innerhalb eines Selektors drei Verschachtelungsebenen tief, ohne Beinting-Regeln zu brechen
Meine Linting-Regeln geben an, dass ich nicht mehr als drei Ebenen der Verschachtelung verwenden kann.
Manchmal möchte ich jedoch ein Element innerhalb eines Modifikator-Selektors in meiner SCSS-Datei anvisieren.
Das ist mein Ansatz:
.block {
&__element {
&--modifier {
&::after {
// Four levels deep :(
}
}
}
}
Dies ist der einzige logische Weg ist, ich um ihn zu sehen:
.block {
&__element {
&--modifier {
// Three levels deep
}
&--modifier::after {
// Three levels deep
}
}
}
ich kein Fan dieses Ansatzes bin, weil ich die Wiederholung nicht mögen Modifikator Klassenname.
Gibt es dafür eine bessere Lösung?