1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

webpack4.0+babelの環境構築

Last updated at Posted at 2019-06-14

#はじめに
先日webpackを初めて触る機会があったのですが、どの記事も少し前に作成されたものばかりでした。その結果、記事通りに作成しても動かないものばかりであったため、この不便性を解消すべく一度も触ったことがない方向けに従来の方法との違いを説明しながら要点を絞ってまとめました。(今回は環境構築のコマンドのみに留めます。webpackやbabelについては参照に載せたものや別記事をご覧下さい。)

#参照
http://top-men.hatenablog.com/entry/2018/02/27/031345
(↑こちらの方の記事をメインに進めて行きます)
https://qiita.com/ChurappsWatatani/items/9798cb28e83242b9e032
https://stackoverflow.com/questions/52092739/upgrade-to-babel-7-cannot-read-property-bindings-of-null/52092788

#ステップ1 Node.jsのインストール

まず、webpackを扱うに当たって必要なNode.jsのインストールから開始します。

npm init -y

これによりpackage.json(など)が作られます。

#ステップ2 webpackのインストール

npm i webpack -D
npm i webpack-cli -D

上記2つのコマンドでwebpackのインストールが完了します。

#ステップ3 package.jsonの変更

"scripts": {
  "build": "webpack"
}

scriptsのbuildをwebpackに設定し直します。

#ステップ4 webpack.config.jsの作成

webpack.config.js
const path = require('path');

module.exports = {
  entry: {
    'index': [
      path.resolve(__dirname, '実行ファイル(例:index.js)')
    ]
  },
  output: {
    filename: '[name].js',
    path: path.resolve(__dirname, 'public'),
    publicPath: '/',
  },
};

この時、実行ファイルも作成するのを忘れないで下さい。

#ステップ5 実行

npm run build

上記のコマンドを実行することで新しく./dist/main.jsファイルが出来上がります。
一度ここまで問題なく実行できるか確認して下さい。

#ステップ6 babelインストール
従来までは下記の方法でインストール出来ました。

npm i babel-loader babel-core babel-preset-env -D

ただ、現在はbabelのバージョンが上がっているため下記のコマンドでインストールする必要があります。

npm i babel-loader @babel/core @babel/preset-env -D

#ステップ7  .babelrcの作成
プロジェクトフォルダ直下に.babelrcを作成しますが、こちらも従来の下記コードだとエラーが起きます。

.babelrc
{ "presets": ["env"] }

バージョンアップしたものを設定して下さい。

.babelrc
{ "presets": ["@babel/preset-env"] }

#ステップ8 実行

webpack.config.jsをbabelに対応するものに書き直し、

webpack.config.js
module.exports = {
  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /node_modules/,
        use: {
          loader: "babel-loader"
        }
      }
    ]
  }
};

そして実行

npm run build

問題なければ、自身でjsファイルに設定した通りに作動するはずです。

#まとめ(+お願い)
私自身もwebpackの利点や特徴をよく分かっていない状態のため、既に活用されている方にコメントでwebpackの良いところや上手い利用方法などを教えて下さると嬉しいです。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?