【babel】babel配置

一牵寺、使用

安裝

npm install --save-dev @babel/core @babel/cli @babel/preset-env 

配置文件

Babel 有兩種并行的配置文件格式叫胁,可以一起使用亡问,也可以獨(dú)立使用枉侧。

  • 全項(xiàng)目配置

babel.config.json/babel.config.js文件

  • 注:可以是js文件引瀑,可以是json文件

Babel在項(xiàng)目根目錄中自動搜索babel.config.json文件,或使用受支持?jǐn)U展名的等效文件

  • 文件相關(guān)配置

.babelrc.json/.babelrc.js文件

  • 注:可以是js文件榨馁,可以是json文件
    Babel通過從正在編譯的“文件名”開始搜索目錄結(jié)構(gòu)來加載.babelrc.json文件憨栽,直至找到包含package.json的目錄下。

二翼虫、預(yù)設(shè)

預(yù)設(shè)是指預(yù)先在babel內(nèi)部設(shè)置好的插件屑柔,可以直接使用。

示例:

{
    preset: [
        "@babel/preset-env",
        {
            target: {
                edge: 17,
                firefox: 60,
                safari: 111
            }
        },
        { useBuiltIns: "usage" },
    ]
}

1. preset

  • @babel/preset-env 用于編譯 ES2015+ 語法
  • @babel/preset-typescript for TypeScript 編譯ts珍剑,替代了ts-loader
  • @babel/preset-react for React

使用preset預(yù)設(shè)

在配置文件中添加presets字段掸宛,執(zhí)行順序是從右到左。

{
  "presets": ["@babel/preset-env"]
}

2. target

targets 是需要兼容的瀏覽器版本

  • 他的值有:android, chrome, deno, edge, electron, firefox, ie, ios, node, opera, rhino, safari, samsung
  • 可以設(shè)置成一個string招拙,比如> 0.5%,last 2 versions, not dead 意思是有大于百分之零點(diǎn)五的人使用唧瘾,前兩個版本,并且沒有廢棄

3. useBuildIns

useBuildIns需要安裝corejs使用

npm i core-js -S

比如:

{ useBuiltIns: "usage" },
  • false: 默認(rèn)值别凤,不做任何語法轉(zhuǎn)換
  • usage:Babel 將檢查你的所有代碼饰序,以便查找targets環(huán)境中缺失的功能,然后只把必須的 polyfill 包含進(jìn)來
  • entry:引入所有的polyfill包规哪,必須在入口文件加入import "core-js/stable" 才會生效

4. corejs

安裝的corejs版本號

什么是corejs?

babel編譯只能針對瀏覽器行為菌羽,es6語法規(guī)定的,如promise由缆、async/await則無法轉(zhuǎn)義注祖。這種情況下則需要配置corejs。
之前這個操作通過babel-polyfill插件均唉,但在7.4之后該插件已被廢棄是晨。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市舔箭,隨后出現(xiàn)的幾起案子罩缴,更是在濱河造成了極大的恐慌,老刑警劉巖层扶,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件箫章,死亡現(xiàn)場離奇詭異,居然都是意外死亡镜会,警方通過查閱死者的電腦和手機(jī)檬寂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來戳表,“玉大人桶至,你說我怎么就攤上這事昼伴。” “怎么了镣屹?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵圃郊,是天一觀的道長。 經(jīng)常有香客問我女蜈,道長持舆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任伪窖,我火速辦了婚禮逸寓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘惰许。我一直安慰自己席覆,他們只是感情好史辙,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布汹买。 她就那樣靜靜地躺著,像睡著了一般聊倔。 火紅的嫁衣襯著肌膚如雪晦毙。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天耙蔑,我揣著相機(jī)與錄音见妒,去河邊找鬼。 笑死甸陌,一個胖子當(dāng)著我的面吹牛须揣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播钱豁,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼耻卡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了牲尺?” 一聲冷哼從身側(cè)響起卵酪,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎谤碳,沒想到半個月后溃卡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蜒简,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年瘸羡,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搓茬。...
    茶點(diǎn)故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡最铁,死狀恐怖讯赏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情冷尉,我是刑警寧澤漱挎,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站雀哨,受9級特大地震影響磕谅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜雾棺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一膊夹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧捌浩,春花似錦放刨、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至浪听,卻和暖如春螟碎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背迹栓。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工掉分, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人克伊。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓酥郭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親愿吹。 傳聞我的和親對象是個殘疾皇子不从,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容