中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

babel基本使用詳解

發布時間:2020-09-20 12:15:06 來源:腳本之家 閱讀:193 作者:zhouxiaoyi 欄目:web開發

什么是babel?

babel是一個強大的多用途js編譯器 點擊進入官網

安裝babel

npm install -g babel-cli 
npm install --save-dev babel-cli

babel配置文件

通過.babelrc來表示

{
 "presets" : [ ],
 "plugins" : [ ]
}

presets用來存放一些預設

plugins用來存放一些插件 

命令行的簡單使用

我們可以通過 -o (--out-file) 參數來編譯一個文件

babel es6.js -o es5.js / babel es6 --out-file es5.js

如果我們想編譯整個目錄 -d (--out-dir)參數

babel  src -d build / babel  src --out-dir build

預設

現在有一段es6的代碼,我們想要使用babel來編譯這段代碼, 目前來說通過編譯后的代碼幾乎是原封不動的復制了過來

es6.js

var add = (a,b) =>{
 console.log(a+b)
}
add(1,2)

我們可以安裝babel-preset-es2015來解析es2015的語法

npm install --save-dev babel-preset-es2015

然后通過配置.babelrc文件

{
 "presets": ["es2015"]
}

這樣我們就可以進行對es2015語法解析了。最后通過配置package.json的scripts

"scripts": {
 "build" : "babel src -d build -w"
 }

接下來直接在命令行

npm run build

插件

在babel中有很多很多的插件, 例如我們要將下面一段代碼轉換成umd的形式,該如何做呢?

var add = (a,b) =>{
 console.log(a+b)
}
add(1,2)

首先找到對應的插件babel-plugin-transform-es2015-modules-umd,安裝該插件

npm install --save-dev babel-plugin-transform-es2015-modules-umd

在配置中引入

{
 "presets":["es2015"],
 "plugins":["transform-es2015-modules-umd"]
}

然后編譯后就是我們想要的了

(function (global, factory) {
 if (typeof define === "function" && define.amd) {
 define(["module", "exports"], factory);
 } else if (typeof exports !== "undefined") {
 factory(module, exports);
 } else {
 var mod = {
  exports: {}
 };
 factory(mod, mod.exports);
 global.sum = mod.exports;
 }
})(this, function (module, exports) {
 "use strict";
 Object.defineProperty(exports, "__esModule", {
 value: true
 });
 var sum = function sum(a, b) {
 return a + b;
 };
 exports.default = sum;
 module.exports = exports["default"];
});

集成gulp

babel可以單獨使用, 也可以配合構建工具(gulp webpack等)進行結合

首先要下載gulp 和gulp對應的babel插件

npm install gulp gulp-babel --save-dev

創建gulp配置gulpfile.js

const gulp = require('gulp')
const babel = require('gulp-babel')
gulp.task('babel', ()=>{
 return gulp.src('src/**/*.js')
  .pipe(babel())  
  .pipe(gulp.dest('dist'))
})
gulp.task('default' , ['babel'])

配置下package.json中的scripts

"scripts": {
 "dev" : "./node_modules/.bin/gulp"
 }

最后執行命令

npm run dev

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巫溪县| 通州区| 浠水县| 渭南市| 周口市| 万全县| 来宾市| 宁城县| 新蔡县| 若羌县| 磐石市| 长宁县| 洛南县| 白沙| 镶黄旗| 高安市| 梁河县| 尉犁县| 永清县| 无锡市| 翁源县| 民权县| 永城市| 青岛市| 唐河县| 额济纳旗| 灵石县| 报价| 仁化县| 二连浩特市| 县级市| 彭州市| 阿拉善盟| 仲巴县| 大余县| 沁水县| 晋宁县| 泰州市| 洛浦县| 浮梁县| 美姑县|