說下browserslist


browserslist  是一個開源項目

見到有些package.json里會有如下的配置參數

 "browserslist": [
    "> 1%",
    "last 2 versions",
    "Android >= 3.2", 
    "Firefox >= 20", 
    "iOS 7"
  ]

應該不難猜出來,這個項目的瀏覽器兼容情況。

白話就是我這個項目兼容絕大多數的,最新的和iOS7系統下的瀏覽器。不兼容Android 3.2系統以下和Firefox20以下的瀏覽器

像這些" > 1%", "last 2 versions" 都是查詢參數。

查詢參數很強大,比如我想查看在中國大多數瀏覽器的使用情況。還有IE8。對比美國的。

具體參數列表見官方文檔

 

具體的影響到前端工具的編譯情況,比如 Autoprefixer 可以給css加兼容性前綴

babel-preset-env , eslint-plugin-compat, stylelint-no-unsupported-browser-features 和 postcss-normalize

比如.babelrc文件你可以針對配置

{
  "presets": [
    ["env", {
      "targets": {
        "browsers": ["last 2 versions"],
        "node": "current"
      },
    }]
  ]
}

更進一步根據瀏覽器可以獲得特性,比如最新的chrome瀏覽器支持原生的promise,而IE不支持,babel根據browserslist配置項就會動態的轉義。不用在一個個進行配置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM