前端解决方案汇总

css方案

现行的主流的 CSS 方案:

跟 JS 完全解耦,靠预处理器和比如 BEM 这样的规范来保持可维护性,偏传统。
CSS Modules,依然是 CSS,但是通过编译来避免 CSS 类名的全局冲突。
各类 CSS-in-JS 方案,React 社区为代表,比较激进。
Vue 的单文件组件 CSS,或是 Angular 的组件 CSS(写在装饰器里面),一种比较折中的方案。
在比较这几种 CSS 方案时要明确场景的问题,在传统静态界面使用传统的 CSS 方案没什么问题,但是在组件化,单页应用的场景下传统的 CSS 书写方式会有维护的问题,使用 BEM 其实是维护和组件平行的命名方式,思维负担比较重。

传统 css 的一些问题
  • 作用域
    组件对应的 CSS 不希望污染全局,CSS Modules 和 inline styles 等可以解决。
  • Critical CSS
    首屏 CSS 所需 CSS 不需要其他页面的 CSS,CSS-in-JS 解决该方案比较好。
  • Atomic CSS
    尽可能把 CSS 规则压缩的更小,使用原子类。
  • 分发复用
    CSS-in-JS 可以发包到 NPM 复用,因为全部是 Javascript,但是现在 webpack 可以做到这一点,不必要 CSS-in-JS。
  • 跨平台复用
    也可以将 CSS 编译为 Javascript 可以复用。

构建方案

构建工具日新月异,前端的能力越来越强,WEB 的需求也越来越复杂,对前端的要求也越来越高,面对复杂度不同的需求,需要的工具也不同。

grunt 和 gulp 在绝大多数情况下可以使用 npm script 替代,所以用的人比较少。

大公司里怎样开发和部署前端代码? - 张云龙的回答

Rollup 在打包效率和 tree shaking 方面做的比 webpack 好,React 也采用 Rollup 打包。
图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值