node.js + babel + webpack でCUIプログラミングしたかった


説明すること

以下のことがしたかったので個人メモ
* Node.jsで単にコンソールで実行するプログラムを記述するためのwebpack.config.js
* .babelrcでstage-2のjavascriptを利用

個人メモなので、設定だけ記載

Webpack

webpack.config.js
var path = require('path');
module.exports = {
    mode: 'development',
    target: 'node',
    devtool: 'source-map',
    entry: [path.join(__dirname, '/src/index.js')],
    output: {
        path: `${__dirname}/dist`,
        filename: 'main.js'
    },
    module: {
        rules: [{
            test: /\.js$/,
            exclude: /node_modules/,
            use: {
                loader: 'babel-loader'
            }
        }]
    }
};

targetにちゃんとnodeを指定してあげないと動かなかった。
https://webpack.js.org/concepts/targets/

Bable

{
    "presets": [
        ["env", {
            "targets": {
                "node": "current"
            }
        }],
        ["stage-2"]
    ],
    "env": {
        "development": {
            "sourceMaps": "inline",
            "plugins": ["source-map-support"]
        }
    }
}

presetsにちゃんとstage-2を渡してあげる。