当前位置: 首页 > news >正文

webpack.config.js基础配置(五大核心属性)

在上一节webpack零基础入门中我们在安装完webpack 和 webpack-cli依赖之后,直接通过npx webpack ./src/main.js --mode=development的方式对src下的js文件进行了打包。
其中的
./src/main.js: 指定 Webpack 从 main.js 文件开始打包,不但会打包 main.js,还会将其依赖也一起打包进来。
--mode=xxx:指定模式(环境)。
./src/main.js就是webpack的打包入口文件,–mode是指定打包的模式,
这些东西其实我们可以在webpack.config.js中配置,配置好了之后,我们只需要执行

npx webpack

就能打包了,不用那么长的命令。

一、准备 Webpack 配置文件

在项目根目录下新建文件:webpack.config.js
如图:
在这里插入图片描述
Webpack 是基于 Node.js 运行的,所以采用 Common.js 模块化规范

图中的五个属性,就是webpack的五大核心概念

  1. entry(入口)
    指示 Webpack 从哪个文件开始打包

  2. output(输出)
    指示 Webpack 打包完的文件输出到哪里去,如何命名等

  3. loader(加载器)
    webpack 本身只能处理 js、json 等资源,其他资源需要借助 loader,Webpack 才能解析

  4. plugins(插件)
    扩展 Webpack 的功能

  5. mode(模式)
    主要有两种模式:
    开发模式development
    生产模式production

二、 修改 Webpack 配置文件

// Node.js的核心模块,专门用来处理文件路径
const path = require("path");module.exports = {// 入口// 相对路径和绝对路径都行entry: "./src/main.js",// 输出output: {// path: 文件输出目录,必须是绝对路径// path.resolve()方法返回一个绝对路径// __dirname 当前文件的文件夹绝对路径path: path.resolve(__dirname, "dist"),// filename: 输出文件名filename: "main.js",},// 加载器module: {rules: [],},// 插件plugins: [],// 模式mode: "development", // 开发模式
};

修改好之后我们删除项目目录下上次打包好的dist文件夹,执行以下命令重新打包:

npx webpack

在这里插入图片描述
看到新增了dist目录,且有main.js文件代表打包成功了,然后我们再重新执行public目录下的index.html文件,如图:
在这里插入图片描述
控制台还是打印了两个函数的调用结果。
说明我们配置是生效的,当然目前的一些配置都是最基本,只能处理js文件,还不能处理css,图片等资源,这里只是还原一下上节中默认配置效果。

再提一句,如果你执行npx webpack出现如下图所示的报错,是你的node版本太低了,安装16.X以上的版本就好啦
在这里插入图片描述

http://www.lryc.cn/news/91718.html

相关文章:

  • 【华为OD机试】阿里巴巴找黄金宝箱(IV)【2023 B卷|200分】
  • Qt6 C++基础入门2 文件结构与信号和槽
  • 常用模拟低通滤波器的设计——契比雪夫II型滤波器
  • SSM 如何使用 Redis 实现缓存?
  • uin-app如何获取微信昵称和头像的博客
  • 第六十七天学习记录:对陈正冲编著《C 语言深度解剖》中关于变量命名规则的学习
  • matlab 计算点云的线性指数
  • SpringBoot集成ElasticSearch
  • 分治入门+例题
  • 剑指offer打卡
  • 运维实用脚本整理
  • INT8 中的稀疏性:加速的训练工作流程和NVIDIA TensorRT 最佳实践
  • 隧道模式HTTP代理使用代码示例
  • 翻筋斗觅食海鸥优化算法-附代码
  • K8S常见应用场景(六)
  • 《不抱怨的世界》随记
  • 2.2 利用MyBatis实现CRUD操作
  • 自动缩放Kubernetes上的Kinesis Data Streams应用程序
  • 介绍js各种事件
  • Python 将 CSV 分割成多个文件
  • S32K144开发板
  • 三波混频下的相位失配原理
  • 软考A计划-试题模拟含答案解析-卷一
  • Ubuntu下编译运行MicroPython Unix版本
  • 实现用QCustomPlot封装的插件,放到绘图软件中可以点击和移动
  • 【源码解析】Nacos配置热更新的实现原理
  • 界面组件DevExpress ASP.NET Core v22.2 - UI组件升级
  • 阿里系文生图(PAI+通义)
  • Netty概述及Hello word入门
  • 汇编寄存器之内存访问