亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue中babel.config.js配置示例詳解

 更新時間:2023年02月01日 11:58:08   作者:孟華328  
Babel是一個JS編譯器,主要作用是將ECMAScript2015+ 版本的代碼,轉(zhuǎn)換為向后兼容的JS語法,以便能夠運行在當(dāng)前和舊版本的瀏覽器或其它環(huán)境中,下面這篇文章主要給大家介紹了關(guān)于Vue中babel.config.js配置詳解的相關(guān)資料,需要的朋友可以參考下

1 概述

Babel 相當(dāng)于一個中介,一邊是用戶,另一邊是瀏覽器。這幾年,JavaScript 發(fā)生了很大的變化,許多新特性在很多瀏覽器里都不支持。

Babel 的主要作用就是規(guī)避這些問題,可以確保 JavaScript 代碼兼容所有的瀏覽器,比如 IE 11。

2 Babel 的工作原理

Babel 使用 AST 把不兼容的代碼編譯成 ES15 版本,因為大多數(shù)瀏覽器都支持這個版本的 JavaScript 代碼。

2.1 如何設(shè)置?

在控制臺運行如下命令:

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

應(yīng)用程序的根目錄會默認(rèn)創(chuàng)建一個 babel.config.json 文件。Babel 將遍歷 src 目錄下的所有 JS 文件。

{
  "presets": [
    [
      "@babel/env",
      {
        "targets": {
          "edge": "17",
          "firefox": "60",
          "chrome": "67",
          "safari": "11.1"
        },
        "useBuiltIns": "usage",
        "corejs": "3.6.5"
      }
    ]
  ]
}`

babel.config.json 添加到 package.json 里。

"build": "./node_modules/.bin/babel src --out-dir build"

然后,執(zhí)行如下命令:

npm run build

這時,在 build 文件夾里就生成了轉(zhuǎn)換代碼。

2.2 @babel/core @babel/cli @babel/preset-env 到底做了哪些事情

  • @babel/core:Babel 的所有核心功能都在這里
  • @babel/cli:提供了 CLI 工具,使我們能夠運行 npm run build
  • @babel/preset-env:提供預(yù)置功能

3 插件

Babel 使用插件來執(zhí)行代碼轉(zhuǎn)換,插件其實就是用 JavaScript 所寫的程序片段。比如@babel/plugin-change-Arrow-function ,它的代碼實現(xiàn)如下:

// From this
const fn = () => 1;

// Converted to this
var fn = function fn() {
  return 1;
};

上面提到的 @babel/preset-env 本身包含了一組插件,可以處理手動設(shè)置插件帶來的很多問題,大多數(shù)情況下能夠智能處理代碼。

Polyfill

Polyfill 是 JavaScript 代碼片段,兼容原本不支持的舊版瀏覽器。Polyfill 模塊包括core-js和一個自定義的重生器運行時,以模擬完整的ES2015 +環(huán)境。如果要使用 PolyFill 必須運行如下命令:

// Install via 
npm install --save @babel/polyfill

// Add via
import "core-js/stable";
import "regenerator-runtime/runtime";

4 Babel 配置文件的優(yōu)先級

從低到高依次為:

  • babel.config.json
  • babelrc.json
  • @babel/cli

依照優(yōu)先級,babel.config.json 會被 . babelrc 覆蓋,依次類推。

5 Babel 有哪些值得注意的選項

以下面的配置為例:

{
    "presets":
    [
        [
            "@babel/env",
            {
                "targets":
                {
                    "edge": "17",
                    "firefox": "60",
                    "chrome": "67",
                    "safari": "11.1"
                },
                "useBuiltIns": "usage",
                "corejs": "3.6.5"
            }

        ]
    ],
}

如果要縮減輸出代碼,需要增加選項 "minified": true

如果要忽略某些文件,則添加 ignore: ["file or directory path"]

只編譯特定的文件或文件夾,則添加

// For Files
"only" : ["./src/some_file.js"],
// For Directory
"only" : ["./src"],

總結(jié)

到此這篇關(guān)于Vue中babel.config.js配置的文章就介紹到這了,更多相關(guān)Vue babel.config.js配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于vue的換膚功能的示例代碼

    基于vue的換膚功能的示例代碼

    本篇文章主要介紹了基于vue的換膚功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • vue使用element-plus依賴實現(xiàn)表格增加的示例代碼

    vue使用element-plus依賴實現(xiàn)表格增加的示例代碼

    這篇文章主要為大家詳細(xì)介紹了vue使用element-plus依賴實現(xiàn)表格增加,文中示例代碼講解的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2023-12-12
  • vue3時間戳轉(zhuǎn)換(不使用過濾器)

    vue3時間戳轉(zhuǎn)換(不使用過濾器)

    這篇文章主要介紹了vue3時間戳轉(zhuǎn)換,?vue2轉(zhuǎn)換時間戳的時候一般使用過濾器的方式,到vue3之后,vue3移除了過濾器,就不能再用了,官方是推薦使用方法或者計算屬性的方式。下面我們來看看詳細(xì)介紹吧</P><P>
    2021-12-12
  • 詳解vue2如何實現(xiàn)點擊預(yù)覽本地文件

    詳解vue2如何實現(xiàn)點擊預(yù)覽本地文件

    這篇文章主要為大家詳細(xì)介紹了vue2如何實現(xiàn)點擊預(yù)覽本地的word、excle、pdf文件,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • ElementUI修改實現(xiàn)更好用圖片上傳預(yù)覽組件

    ElementUI修改實現(xiàn)更好用圖片上傳預(yù)覽組件

    這篇文章主要為大家介紹了ElementUI修改實現(xiàn)更好用圖片上傳預(yù)覽組件示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • vue中computed和watch的使用實例代碼解析

    vue中computed和watch的使用實例代碼解析

    這篇文章主要介紹了vue中computed和watch的綜合運用實例,主要需求是點擊按鈕實現(xiàn)天氣的切換效果結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Vite創(chuàng)建項目的實現(xiàn)步驟

    Vite創(chuàng)建項目的實現(xiàn)步驟

    隨著 Vite2 的發(fā)布并日趨穩(wěn)定,現(xiàn)在越來越多的項目開始嘗試使用它。本文我們就介紹了Vite創(chuàng)建項目的實現(xiàn)步驟,感興趣的可以了解一下
    2021-07-07
  • 前端Vue如何獲取登錄的用戶名或用戶id代碼實例

    前端Vue如何獲取登錄的用戶名或用戶id代碼實例

    在前端開發(fā)中,獲取登錄用戶的用戶名是一項常見的需求,這篇文章主要給大家介紹了關(guān)于前端Vue如何獲取登錄的用戶名或用戶id的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-07-07
  • Vue中watch、computed、updated三者的區(qū)別及用法

    Vue中watch、computed、updated三者的區(qū)別及用法

    這篇文章主要介紹了Vue中watch、computed、updated三者的區(qū)別及用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 在Vant的基礎(chǔ)上封裝下拉日期控件的代碼示例

    在Vant的基礎(chǔ)上封裝下拉日期控件的代碼示例

    這篇文章主要介紹了在Vant的基礎(chǔ)上封裝下拉日期控件的代碼示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12

最新評論