Ich werde Ihnen niemals sagen, dass das Schreiben Ihres CSS in CSS (oder einem beliebigen syntaktischen Präprozessor) eine schlechte Idee ist. Ich denke, Sie können auch ganz ohne Werkzeuge produktiv und performant sein. Aber ich denke auch, dass das Schreiben von CSS in JavaScript eine gute Idee ist, für komponentenbasierte Stile in Codebasen, die alle ihre Komponenten ohnehin mit JavaScript erstellen.
In diesem Artikel konzentriert sich Max Stoiber darauf, warum CSS in JavaScript geschrieben werden soll, anstatt wie es gemacht wird. Es gibt einen Grund, der mich besonders anspricht, und das ist Zuversicht. Das bedeutet für mich Styling-Zuversicht.
CSS in JavaScript ist nicht die einzige Antwort auf diese Dinge, aber wie Max auf andere Beiträge zu diesem Thema verweist, kann es zu Situationen führen, in denen gute Entscheidungen auf natürliche Weise getroffen werden.
Es gibt einige Gründe, warum ich dem nicht zustimme. Performance ist einer davon, als ob die Wahl von CSS-in-JS ein automatischer Performance-Gewinn wäre. Ein Teil des Problems (und ich mache es hier auch richtig) ist, dass CSS-in-JS ein breites Spektrum an Lösungen umfasst. Ich habe im Allgemeinen festgestellt, dass es keine großen Performance-Gewinne bei CSS-in-JS gibt (eher das Gegenteil), aber das ist irrelevant, wenn wir über etwas wie CSS-Module sprechen, bei dem die Stile extrahiert und wie jedes andere CSS verknüpft werden.
Ich bin vertrauter mit dem Elm-Ökosystem, und dort haben wir sogar Elm UI, das HTML und CSS vermischt und Dinge noch weiter abstrahiert.
https://package.elm-lang.org/packages/mdgriffith/elm-ui/latest/
Ich habe Anfang der 2000er Jahre angefangen, CSS zu verwenden, daher ist es für mich selbstverständlich, Stilinformationen auf diese Weise zu schreiben. Dennoch glaube ich, dass es Raum für CSS-in-JS oder besser CSS-in-Whatever gibt. Es hängt wirklich vom Kontext des Projekts ab.