<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] * * * * * ### **一、babel 介紹** `Babel `是一個 `JavaScript `編譯器,它可以將` es6`中的代碼編譯成目前大多數瀏覽器識別的`es5`代碼。 例如它將以ES6代碼下: ```JavaScript let test = a =>console.log(a) ``` 編譯成ES5 代碼: ```JavaScript "use strict"; var test = function (a){ return a } ``` 并且 babel 還支持 react的 JSX 語法 [babel中文網](https://www.babeljs.cn/) ### **二、babel 的使用方式** #### **1. 瀏覽器中** 在頁面中引入 ```JavaScript <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script> ``` 然后在 `.babelrc.` 配置文件中進行配置 #### **2. 命令使用** 首先先安裝 `babel-cli` ```JavaScript npm install babel-cli --save-dev // 局部安裝的 ``` 然后可以執行下面命令 **需要注意的是**:執行以下命令前也需要先在 `.babelrc. `配置文件中進行配置, 不然不會編譯文件 - 在命令版中輸出編譯的test.js 文件 ```JavaScript npx babel test.js ``` - 將編譯文件輸出指定的文件 ```JavaScript $ babel example.js --out-file compiled.js # 或 $ babel example.js -o compiled.js ``` - 編譯整個文件夾中的文件 ```JavaScript $ babel src --out-dir lib # 或 $ babel src -d lib ``` 另外還有一些其他的使用方法,常見的比如在webpack中使用,更多使用場景見 [官網](https://www.babeljs.cn/docs/setup/) ### **三、`.babelrc.` 配置文件** 在babel 編譯es6之前需要知道該以哪種規則或條件去編譯,而這些條件和編譯方式我們寫在`.babelrc.` 配置文件 中,也可在通過 `package.json` 來配置`.babelrc.` ,`Babel `會在正在被轉錄的文件的當前目錄中查找一個` .babelrc` 文件。 如果不存在,它會遍歷目錄樹,直到找到一個 `.babelrc` 文件,或一個 `package.json` 文件中有` "babel": {} `。另外我們還要下載一些相應的編譯插件。 中文官網:[.babelrc 的使用方法](https://www.babeljs.cn/docs/usage/babelrc/) ```JavaScript { "presets": [], "plugins": [] } ``` #### **1. 編譯插件** > 官方預設(preset), 有兩種,一個是按年份(babel-preset-2017),一個是按階段(babel-preset-stage-X)。 這主要是根據TC39 委員會ECMASCRPIT 發布流程來制定的。TC39 委員會決定,從2016年開始,每年都會發布一個版本,它包括每年期限內完成的所有功能,同時ECMAScript的版本號也按年份編制,就有了ES2016, ES2017。所以也就有了babel-present-2016, babel-preset-2017, 對每一年新增的語法進行轉化。babel-preset-latest 就是把所有es2015, es2016, es2017 全部包含在一起了。 以下是4 個不同階段的(打包的)預設: - babel-preset-stage-0 - babel-preset-stage-1 - babel-preset-stage-2 - babel-preset-stage-3 `babel-preset-latest` 編譯插件是一個特殊的presets,包括了 `es2015`,`es2016`,`es2017`的插件(目前為止,以后有es2018也會包括進去)。即總是包含最新的編譯插件。 由于現在瀏覽器對ES6 的支持度越來越高,如果我們使用`babel-preset-latest` 編譯插件則會將一些本不需要的編譯(大多數瀏覽器都支持的ES6 語法)編譯成臃腫的es5語法。為此我們可以使用 `babel-preset-env`編譯插件 #### **2. `.babelrc.` 的配置** 安裝 `babel-preset-env`編譯插件 ```JavaScript npm install -D babel-preset-env ``` 在`.babelrc.` 配置文件中進行配置,沒有選項的默認行為會運行所有轉換(行為與babel-preset-latest相同) ```JavaScript { "presets": [ "env", { "targets":{ "browsers": ["last 2 versions", "ie >=8 "] // 指定支持主流瀏覽器最新的兩個版本以及IE 7+: }, "plugins":["transform-vue-jsx"], // 使用編譯擴展插件,這里使用的vue擴展插件 "node": true, // 針對當前node版本進行編譯 "modules": "amd" // 啟用將ES6模塊語法轉換為另一種模塊類型 } ] } ``` 當然我們還可以設置固定版本的瀏覽器: ```JavaScript "targets": { "chrome": 60 } ``` 支持超過市場份額5%的瀏覽器: ```JavaScript "targets": { "browsers": "> 5%" } ``` babel 的更多配置 [http://babeljs.io/docs/en/babel-preset-env/](http://babeljs.io/docs/en/babel-preset-env/) [參考文章](https://segmentfault.com/a/1190000008159877#articleHeader6)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看