站長資訊網
        最全最豐富的資訊網站

        es6運行環境怎么搭建

        搭建步驟:1、安裝babel-cli工具,語法“npm install –save-dev babel-cli”;2、安裝依賴,語法“npm install –save-dev babel-preset-es2015 babel-cli”;3、配置根目錄下的“.babelrc”文件,設定轉碼規則;4、在package.json中修改scripts命令執行項即可。

        es6運行環境怎么搭建

        前端(vue)入門到精通課程:進入學習
        Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

        本教程操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

        es6的優點(題外話):

        es6是ECMAScript2015。es6是js的子集,但是我們一般說的js是es6之前的版本。js本身是很不完美的語言,但是es6將js很多丑陋的部分通過語法糖隱藏了。它提供了很多特性,像jascript數據處理,箭頭函數,解構賦值,Default Parameters(默認參數),Classes(類),Modules(模塊)等,包括前后端分離用的這些異步請求方法,能非常好的解決大前端遇到的問題。

        es6的開發環境搭建(es6轉碼為es5)

        工欲善其事必先利其器,哈哈,所以第一步就是搭建一個es6的開發環境。低版本的瀏覽器不支持es6的語法,這就需要在運行環境中把es6的語法轉換成es5的語法 ,在vue中Webpack是有自動編譯和轉換能力的,除了Webpack還有babel可以使用

        Babel使用規則

        Babel是一個廣泛使用的轉碼器,可以將ES6代碼轉為ES5代碼,從而在現有環境執行。

        這意味著,你可以現在就用 ES6 編寫程序,而不用擔心現有環境是否支持。下面是一個例子。

        // 轉碼前 input.map(item => item + 1);  // 轉碼后 input.map(function (item) {   return item + 1; }); //上面的原始代碼用了箭頭函數,這個特性還沒有得到廣泛支持,Babel將其轉為普通函數,就能在現有的JavaScript環境執行了。
        登錄后復制

        1.安裝babel

        Babel提供babel-cli工具,用于命令行轉碼。

        它的安裝命令如下:

        //需要先安裝babel-cli npm install --global babel-cli
        登錄后復制

        2.配置文件.babelrc

        Babel的配置文件是.babelrc,存放在項目的根目錄下。使用Babel的第一步,就是配置這個文件。

        該文件用來設置轉碼規則和插件,基本格式如下。

        {   "presets": [],   "plugins": [] }
        登錄后復制

        presets字段設定轉碼規則,官方提供以下的規則集,你可以根據需要安裝。

        # ES2015轉碼規則 npm install --save-dev babel-preset-es2015  # ES7不同階段語法提案的轉碼規則(共有4個階段),選裝一個 npm install --save-dev babel-preset-stage-0 npm install --save-dev babel-preset-stage-1 npm install --save-dev babel-preset-stage-2 npm install --save-dev babel-preset-stage-3
        登錄后復制

        然后,將這些規則加入.babelrc

        //例如:按需求添加 {     "presets": [       	"es2015",       	"stage-2"     ], 	"plugins": [] }
        登錄后復制

        3.用法

        # 轉碼結果輸出到標準輸出 $ babel example.js  # 轉碼結果寫入一個文件 # --out-file 或 -o 參數指定輸出文件 $ babel example.js --out-file compiled.js # 或者 $ babel example.js -o compiled.js  # 整個目錄轉碼 # --out-dir 或 -d 參數指定輸出目錄 $ babel src --out-dir lib # 或者 $ babel src -d lib  # -s 參數生成source map文件 $ babel src -d lib -s
        登錄后復制


        上面代碼是在全局環境下,進行Babel轉碼。這意味著,如果項目要運行,全局環境必須有Babel,也就是說項目產生了對環境的依賴。另一方面,這樣做也無法支持不同項目使用不同版本的Babel。

        一個解決辦法是將babel-cli安裝在項目之中。

        # 安裝 npm install --save-dev babel-cli
        登錄后復制

        然后,改寫package.json

        {   // ...   "devDependencies": {     "babel-cli": "^6.0.0"   },   "scripts": {     "build": "babel src -d lib"   }, }
        登錄后復制

        轉碼的時候,就執行下面的命令。

        npm run build
        登錄后復制

        看一萬遍,不如自己真正實踐一遍

        第一步:(創建本地項目以及目錄)

        本地新建文件夾,重命名為es6test,用vscode代碼編輯器打開,在文件夾下新建兩個文件,分別是項目文件src,以及打包文件dist文件,在src文件夾下新建index.html文件,并列新建index.js文件,并將index.js文件引入index.html

        es6運行環境怎么搭建

        第二步:(初始化項目,添加轉碼依賴包)

        打開vscode終端 ctrl +~,在文件根目錄下初始化項目:

        npm init -y
        登錄后復制

        會生成一個package.json文件, -y的目的是在初始化時配置默認值,后續在生成的文件中修改即可。

        es6運行環境怎么搭建

        npm太慢,先安裝個cnpm

        npm install -g cnpm --registry=https://registry.npm.taobao.org
        登錄后復制

        在終端全局安裝babel-cli工具,用于命令行轉碼

        cnpm install -g babel-cli
        登錄后復制

        這里迫不及待的想試一試有沒有用,能轉碼不,就先在終端測了一下

        babel src/index.js -o dist/index.js
        登錄后復制

        不出我所料啊,肯定不行!dist文件下是生成了個index.js文件,但是并未轉換成es5的語法

        es6運行環境怎么搭建

        再在本地安裝兩個依賴包

        cnpm install --save-dev babel-preset-es2015 babel-cli
        登錄后復制

        package.json中如果出現下面的內容,恭喜你,所有的依賴包都安裝完了

        es6運行環境怎么搭建

        第三步:(根目錄下.babelrc文件配置)

        es6運行環境怎么搭建

        第四步:(package.json中修改scripts命令執行項)

        es6運行環境怎么搭建

        第五步:(驗收成果,哈哈!)

        cnpm run build
        登錄后復制

        es6運行環境怎么搭建

        你也可以在src/index.js中再寫些es6的語法,測試下。

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲国产精品丝袜在线观看| 亚洲av永久无码精品秋霞电影影院 | 日本精品一区二区三区在线视频 | 国产精品亚洲精品观看不卡| 伊人精品视频在线| 99久久精品免费| 久久精品国产一区二区三区日韩| 日韩精品无码专区免费播放| 久久免费国产精品| 国产乱人伦精品一区二区在线观看 | 国产偷国产偷高清精品| 国产精品久久波多野结衣| 一本久久a久久精品亚洲| 精品国产一区二区22| 91亚洲国产成人久久精品网址| 国产精品三级国产电影| 亚洲精品国产精品乱码视色| 亚洲av无码国产精品色在线看不卡 | 欧美国产日韩精品| 国产精品成人观看视频免费| 精品无码人妻夜人多侵犯18| 无码少妇精品一区二区免费动态| 亚欧无码精品无码有性视频| 精品国产婷婷久久久| 精品久久久久久无码人妻蜜桃| 国产精品九九久久精品女同亚洲欧美日韩综合区| 国产精品久久久久aaaa| 91麻豆精品国产自产在线观看一区| 久久99国产综合精品女同| 日韩精品无码一区二区三区免费| 无码精品A∨在线观看| 欧美精品中文字幕亚洲专区| 无码人妻精品一区二区在线视频| 中文成人无字幕乱码精品区| 亚洲欧美日韩精品专区| 亚洲精品国精品久久99热一| 人妻少妇精品中文字幕av蜜桃| 精品国产sm捆绑最大网免费站| 国产区精品一区二区不卡中文| 99re8这里有精品热视频免费| 国产精品视频第一页|