美文网首页
webpack入门

webpack入门

作者: wwq2020 | 来源:发表于2020-07-06 20:33 被阅读0次

准备环境

安装 node 和 npm(省略)

新建目录

mkdir learnwebpack
cd learnwebpack

初始化

npm init -y

安装 webpack

npm install webpack webpack-cli -D

创建 src 目录

mkdir src

在 src 下创建 index.js,内容如下

class Example {
    constructor() {
    }
}

const e = new Example();

直接运行 webpack

npx webpack --mode=development

看到 dist/main.js 中的内容,很明显不是兼容 es5 的

安装 babel 相关

npm install @babel/core @babel/preset-env @babel/plugin-transform-runtime -D

npm install @babel/runtime @babel/runtime-corejs3

在根目录下创建 webpack.config.js,内容如下

module.exports = {
    module: {
        rules: [
            {
                test: /\.(jsx|js)?$/,
                use: {
                    loader: 'babel-loader',
                    options: {
                        presets: ["@babel/preset-env"],
                        plugins: [
                            [
                                "@babel/plugin-transform-runtime",
                                {
                                    "corejs": 3
                                }
                            ]
                        ]
                    }
                },
                exclude: /node_modules/
            }
        ]
    }
}

新建 public 目录

mkdir public

public 目录下新建 index.html

通过html:5+tab自动生成

在 webpack.config.js 添加

const HtmlWebpackPlugin = require("html-webpack-plugin");

module.exports = {
  ...
  plugins: [
    new HtmlWebpackPlugin({
      template: "./public/index.html",
      filename: "index.html",
    }),
  ],
  ...
};

添加兼容依赖

npm install cross-env -D

在 package.json 中添加

{
 ...
 "scripts": {
     ...
    "dev": "cross-env NODE_ENV=development webpack",
    "build": "cross-env NODE_ENV=production webpack"
  },
  ...
}

添加 webpack-dev-server,方便在浏览器实时看到结果

npm install webpack-dev-server -D

修改 package.json

{
 ...
 "scripts": {
     ...
    "dev": "cross-env NODE_ENV=development webpack-dev-server",
    "build": "cross-env NODE_ENV=production webpack"
  },
  ...

  devServer: {
    port: "3000",
  },
}

相关文章

网友评论

      本文标题:webpack入门

      本文链接:https://www.haomeiwen.com/subject/ydggqktx.html