为什么需要:
根据提供的目标浏览器的环境来,智能添加css前缀,js的polyfill垫片,来兼容旧版本浏览器,而不是一股脑的添加。避免不必要的兼容代码,以提高代码的编译质量。
共享使用browserslist的组件们:
组件名 | 功能 |
---|---|
Autoprefixer | postcss添加css前缀组件 |
bable-preset-env | 编译预设环境 智能添加polyfill垫片代码 |
eslint-plugin-compat | |
stylelint-no-unsupported-browser-features | |
postcss-normalize | |
等等... |
基础语法: 只要package.json配置了browserslist对象,需要的组件将自动匹配到并使用,也可以配置到具体的组件参数上
{// package.json
"browserslist": [ // 注意:是一个数组对象
"> 1%",
"last 2 versions"
] }
last 2 versions:CanIUse.com追踪的IE最新版本为11,向后兼容两个版本即为10、11
设置语法:通过浏览器过滤的思路实现
默认是兼容所有最新版本
例子 说明
一般默认脚手架的配置: