babel 元件的作用

2021-08-19 01:12:00 字數 1273 閱讀 5175

"babel-core": "^7.0.0-beta.3",  //

/***把 js **分析成 ast (抽象語法樹, 是源**的抽象語法結構的樹狀表現形式),

*方便各個外掛程式分析語法進行相應的處理。

*有些新語法在低版本 js 中是不存在的,如箭頭函式,rest 引數,函式預設值等,

*這種語言層面的不相容只能通過將**轉為 ast,

*再通過語法轉換器分析其語法後轉為低版本 js。

***/"babel-eslint":"^8.2.3", //eslint 是乙個語法規則和**風格的檢查工具,可以用來保證寫出語法正確、風格統一的**。

"babel-loader": "^7.1.4", //允許babel元件執行在webpack上,其它*-loader 元件是乙個道理

"babel-plugin-transform-decorators-legacy": "^1.3.4", //支援轉碼 es7 裝飾器

"babel-plugin-transform-runtime": "^6.23.0", // 1.避免 babel 編譯的工具函式在每個模組裡重複出現,減小庫和工具包的體積。2.避免汙染全域性命名空間 詳細url:

/***polyfill 汙染全域性環境、支援例項方法

*runtime 不汙染全域性環境、不支援例項方法

*這個模組會將我們的**重寫,如將 promise 重寫成 _promise(只是打比方),

*然後引入_promise helper 函式。這樣就避免了重複打包**和手動引入模組的痛苦。

**/"babel-preset-env": "^1.6.1", //es執行環境對es6,es7,es8支援不一,有的支援好,有的支援差,為了充分發揮新版es的特性,我們需要在特定的平台上執行特定的轉碼規則,說白了就像是按需轉碼的意思

"babel-preset-stage-0": "^6.24.1", //babel stage-0

"babel-register": "^6.26.0", //所有 .es6, .es, .jsx and .js 可以被 babel 轉碼

"babelify": "^8.0.0", //babellify 這個是 babel 為 browserify 提供的

/***babellify 這個是 babel 為 browserify 提供的

*babel-loader 是用於 webpack

*babel6 也是可以在瀏覽器中使用的,可以使用 babel-standalone

****/

babel外掛程式的作用及區別

babel preset stage x型別 stage 0 法力無邊呢,因為它包含stage 1,stage 2以及stage 3的所有功能,同時還另外支援如下兩個功能外掛程式 參考 babel preset x型別 babel preset es2015 babel preset es2016。...

babel的作用是什麼?

babel是將es6及以上版本的 轉換為es5的工具。它用 babel.config.js 或 babelrc 檔案作為配置檔案,其中最為重要的配置引數是presets和plugins。plugins babel外掛程式可以將輸入原始碼進行轉換,輸出編譯後的 presets 一組babel外掛程式,...

babel的常見外掛程式的功能和作用

babel es6轉義的核心包 babel cli 用於在終端使用babel,用命令列轉碼 babel core 如果某些 需要呼叫babel的api進行轉碼,就要使用 babel core 模組 babel loader 執行轉義的核心包 babel plugin react transform ...