• 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工具,顺便给我说说结果,懒得删了~。

  • 相关阅读:
    java8
    Python isinstance()
    Python3 File next()
    np.array() 与 np.mat() 比较
    np.nonzero()
    np.dot()
    算法之归并排序的应用 —— 小和问题以及逆序对问题
    递归过程以及递归master公式
    算法之异或运算及其应用
    算法之二分法及其应用
  • 原文地址:https://www.cnblogs.com/unck-luck/p/5503452.html
Copyright © 2020-2023  润新知