• linux中,给nodejs安装babel


    在使用node的时候,看到别人家的代码都是var http=require('http')之类的,我就好奇,node不是都已经开始支持es2015了吗?为毛还用var?果断改用let!duang!!!

    /home/xiejk/projects/node/first/server.js:2
    let http = require('http');
        ^^^^
    SyntaxError: Unexpected identifier
        at Module._compile (module.js:439:25)
        at Object.Module._extensions..js (module.js:474:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Function.Module.runMain (module.js:497:10)
        at startup (node.js:119:16)
        at node.js:902:3
    

    感受一下我看到这个异常时的差异,果断百度之。哦,原来还要用babel变异一下,下面就是安装babel的流程了:
    1.先来测试一下node对es6的支持情况,安装一个检查工具es-checker,执行如下命令
    npm -g install es-checker
    安装完成,执行命令:es-checker,得到es6的支持性
    创建一个工作目录,新建package.json文件,文件内容如下

    {
        "name":"my-project",
        "version":"1.0.0",
        "devDependencies": {
        }
    }
    

    保存,退出,执行命令npm --save-dev install babel-cli
    在安装一个全局的babel-cli,执行命令npm -g install babel-cli
    再在工作目录下创建.babelrc文件,文件内容:

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

    最后,安装babel-preset-es2015,命令npm -install --save-dev babel-preset-es2015
    自己写个包含let之类关键字的js文件来测试。
    说个悲伤的事,我在装完插件之后,得到的提示:
    SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
    加上'use strict'就不报错了,不知道插件是不是白装了~~~,希望你们看到这里的时候还没开始装babel工具,顺便给我说说结果,懒得删了~。

  • 相关阅读:
    HDU3145 Max Sum of Max-K-sub-sequence (单调队列模板)
    AcWing1088 旅行问题(单调队列)
    POJ1821 Fence(单调队列)
    POJ1742 Coins(多重背包+二进制优化)
    AcWing217 绿豆蛙的归宿(期望)
    BZOJ.2134.[国家集训队]单选错位(概率 递推)
    洛谷.3805.[模板]manacher算法
    Codeforces.280C.Game on Tree(期望)
    BZOJ.2521.[SHOI2010]最小生成树(最小割ISAP/Dinic)
    洛谷.4172.[WC2006]水管局长(LCT Kruskal)
  • 原文地址:https://www.cnblogs.com/unck-luck/p/5503452.html
Copyright © 2020-2023  润新知