零基礎(chǔ)入門babel

零基礎(chǔ)入門babel

目錄

- 1 本文所涉及的學習環(huán)境:

- 2 本文讀者對象

- 3 概述

- 4 正文

- 4.1 什么是babel?

- 4.2 首次試用babel

- 4.3 開始使用babel

- 5 附錄:

- 6 課后作業(yè):

本文所涉及的學習環(huán)境:

系統(tǒng)環(huán)境:win10

編碼軟件:VS code

瀏覽器:chrome,F(xiàn)irefox疚颊,safari等現(xiàn)代瀏覽器磷雇。

babel版本:7.x

npm版本:6.9.0

本文讀者對象

有一些計算機基礎(chǔ)知識的初學者蛛倦。

學習過JavaScript昆淡。

概述

本文是關(guān)于如何入門babel济锄,即使完全不懂babel的新手也能看懂,希望盡可能的能幫助大家入門babel班挖。

吃碼小妖:官網(wǎng)文檔更適合入門后當手冊查閱枫绅,而不適用于初學者入門的泉孩,所以才寫了這篇文章。

本文寫作時間:2020年4月30日并淋。

正文

什么是babel?

babel的發(fā)音是美 [?be?bl] 寓搬。

可以簡單的理解為JavaScript的轉(zhuǎn)換器。

我們的JavaScript每年都有新功能出現(xiàn)县耽,但是使用JS的瀏覽器卻并不是及時同步更新的句喷。同時,我們的用戶也不會經(jīng)常更新瀏覽器版本兔毙。

所以唾琼,如果我們需要使用一些JS新功能時,就必須將新功能的JS代碼轉(zhuǎn)換為大部分現(xiàn)代瀏覽器能運行的JS版本澎剥。也就是babel的主要作用了锡溯,主要將ES6+的JS代碼轉(zhuǎn)換為ES5代碼。

babel也是起到過渡作用哑姚,等瀏覽器更新?lián)Q代到一定程序祭饭,它的使命也就結(jié)束了。如同IE6時代的結(jié)束叙量,解放了我們倡蝙,不需要再寫一些復雜斑駁的兼容代碼一樣。

首次試用babel

我們可以先看看babel的效果绞佩。

通過babel官方提供的在線轉(zhuǎn)換地址:https://babeljs.io/repl/(下圖)

圖片.png

例子1:ES5是沒有l(wèi)et和const的寺鸥,只有var來聲明變量。

這里用的一個小例子:

let name = "cat";

立刻將let轉(zhuǎn)換為var了征炼。

var name = "cat";

例子2:ES6新加了箭頭函數(shù)析既。

let name = "cat";[1,2,3].map(val => val + 1);

轉(zhuǎn)換后變?yōu)椋?/p>

"use strict";

var name = "cat";
[1, 2, 3].map(function (val) {
  return val + 1;
});
圖片.png

開始使用babel

我們平時都是在項目中使用babel。這樣只需要一次配置谆奥,就足夠使用了。

1拂玻、首先安裝一些庫酸些。

在命令行中輸入下面的代碼宰译,也就是cmd.exe中。cmd.exe可以通過win+s輸入找到魄懂。

npm  i -d  babel-loader @babel/cli @babel/core @babel/polyfill  @babel/preset-env 

解釋說明:

npm 是安裝庫的工具沿侈。具體用法可以到它的官網(wǎng)去學習。這里只簡單的介紹一下市栗。

npm i 是npm install 的縮寫缀拭,也就是安裝的意思。

npm i -d 是將庫信息保存到package.json.js中填帽。便于下次的安裝復用蛛淋。

babal-loader //webpack所需要的loader轉(zhuǎn)換器。

@babel/cli //從終端運行Babel篡腌。

@babel/core //babel的核心代碼褐荷。

@babel/preset-env //轉(zhuǎn)換ES6+為ES5的庫

@babel/polyfill //給瀏覽器添加不支持的功能。

通過若干時間的安裝后嘹悼,最后安裝結(jié)果如下:

圖片.png

這個時候叛甫,babel和它需要的庫都安裝好了,接下來配置它的選項杨伙。

2其监、配置babel。

在項目根目錄創(chuàng)建一個 .babelrc 文件限匣。內(nèi)容如下:

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

或者:在package.json中抖苦。

{
    "name": "test",
    "version": "1.0.0",
    "babel": {
        "presets": ["@babel/preset-env"] 
        // "plugins": ["babel-plugin-myPlugin"], 
    } 
    }

一行代碼配置完畢。簡單吧膛腐。

3睛约、結(jié)合webpack使用babel。

通過配置webpack.config.js哲身,按照下面的代碼就可以了辩涝。

module: {
    rules: [{
        test: /\.js$/,
        exclude: /node_modules/,
        loader: "babel-loader"
    }]
}

解釋說明:

test:后面是用于匹配文件的正則。

exclude:顧名思義就是排除我們不需要解析的文件夾勘天。也是正則語法怔揩。

loader:就是我們用到的loader轉(zhuǎn)換器。

點個贊吧脯丝,愛你呦商膊。(づ ̄3 ̄)づ╭?~

如有任何疑問,歡迎在下面留言宠进。

附錄:

babel官網(wǎng)地址:https://babeljs.io/

babel在線轉(zhuǎn)換地址:https://babeljs.io/repl/

課后作業(yè):

babel是什么晕拆?

如何使用babel?

babel的功能有哪些?

實現(xiàn)一個簡單的babel插件材蹬。

**

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末实幕,一起剝皮案震驚了整個濱河市吝镣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌昆庇,老刑警劉巖末贾,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異整吆,居然都是意外死亡拱撵,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門表蝙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拴测,“玉大人,你說我怎么就攤上這事勇哗≈缈福” “怎么了?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵欲诺,是天一觀的道長抄谐。 經(jīng)常有香客問我,道長扰法,這世上最難降的妖魔是什么蛹含? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮塞颁,結(jié)果婚禮上浦箱,老公的妹妹穿的比我還像新娘。我一直安慰自己祠锣,他們只是感情好酷窥,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著伴网,像睡著了一般蓬推。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上澡腾,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天沸伏,我揣著相機與錄音,去河邊找鬼动分。 笑死毅糟,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的澜公。 我是一名探鬼主播姆另,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蜕青?” 一聲冷哼從身側(cè)響起苟蹈,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤糊渊,失蹤者是張志新(化名)和其女友劉穎右核,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體渺绒,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡贺喝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了宗兼。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片躏鱼。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖殷绍,靈堂內(nèi)的尸體忽然破棺而出染苛,到底是詐尸還是另有隱情,我是刑警寧澤主到,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布茶行,位于F島的核電站,受9級特大地震影響登钥,放射性物質(zhì)發(fā)生泄漏畔师。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一牧牢、第九天 我趴在偏房一處隱蔽的房頂上張望看锉。 院中可真熱鬧,春花似錦塔鳍、人聲如沸伯铣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽腔寡。三九已至,卻和暖如春蜡感,著一層夾襖步出監(jiān)牢的瞬間蹬蚁,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工郑兴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留犀斋,地道東北人。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓情连,卻偏偏與公主長得像叽粹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353