As a web developer that had been using a lot of CSS, Sass and also styled-component, these are my thoughts:
The Pros:
- Making CSS more programmable and into container based.
- CSS in JS support template literal, making CSS to have cooler features.
- Most of the feature of Sass are in styled component.
- Open source project.
- Can be added into your workflow easily (Gulp, Grunt, Webpack)
The Cons:
- Learning curve and syntax changes.
- Mixing CSS into JS, not sure everyone is the fan of doing so.
- Without the use of SSR, might caused bad User Experience for older browser user or those disabled JS