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

news2025/2/26 0:26:54

在上一节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.coloradmin.cn/o/618782.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

A ConvNet for the 2020s

A ConvNet for the 2020s 2020年代的ConvNet https://openaccess.thecvf.com/content/CVPR2022/papers/Liu_A_ConvNet_for_the_2020s_CVPR_2022_paper.pdf Zhuang Liu 1 , 2 ∗ ^{1,2*} 1,2∗ Hanzi Mao 1 ^1 1 Chao-Yuan Wu 1 ^1 1 Christoph Feichtenhofer 1 ^1 1 Trevor Da…

mpls vpn综合实例配置案例

如图1所示: 1、AR4连接公司总部财务部、AR6连接分支机构财务部,AR4和AR6属于vpna; 2、 AR5连接公司总部办公、 AR7连接分支机构办公, AR5和 AR7属于vpnb。 公司要求通过部署BGP/MPLS IP VPN,实现总部和分支机构的安全互…

2023年6月DAMA-CDGA/CDGP数据治理工程师认证到这家

DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业…

CleanMyMac X 4.13.4许可证激活码2023最新免费版

小伙伴们,你们好,今天兔八哥爱分享来聊聊cleanmymac X如何激活,关于cleanmymac的基本情况说明介绍的文章,网友们对这件事情都比较关注,那么现在就为大家来简单介绍下,希望对各位小伙伴们有所帮助。在不断更新的版本中&…

数字化转型的难点是什么?该如何突破?

01为什么要进行数字化转型? 数字化转型不仅是企业提高效率和竞争力的必经之路,也是市场发展趋势的体现。 提升业务效率:数字化转型可以采用自动化流程、数据分析和智能化技术,从而提高企业业务的自动化水平,优化流程…

TLE7244SL-ASEMI代理英飞原装汽车芯片TLE7244SL

编辑:ll TLE7244SL-ASEMI代理英飞原装汽车芯片TLE7244SL 型号:TLE7244SL 品牌:Infineon(英飞凌) 封装:SSOP-24-150mil 类型:电源负载开关 TLE7244SL特性 4个输入引脚,提供灵活的PWM配置 由专用引脚…

XML转换成JSON

说在前面 相信大家对 XML 都不会很陌生了,XML 被设计用来结构化、存储以及传输信息。最近在开发过程中发现,有一些旧接口返回的数据格式即是 XML 的格式,因此需要我们对返回的 XML 数据进行解析,转换成我们好处理的 JSON 数据结构…

SCI论文去哪里查找下载

SCI论文,是指被SCI(Scientific Citation Index),即科学引文索引所收录的SCI期刊上刊登的学术期刊论文。如何查找下载SCI论文呢?请看下面讲解。 Web of Science数据库 Web of Science是获取全球学术信息的重要数据库,它收录了全球…

vue篇——vue原理以及实现

vue 官网解释Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,简单易学、双向数据绑定、组件化。数据和结构的分离、虚拟DOM、运行速度快。链接 它有以下的特性:1.轻量级的框架;2.双向数据绑定;3…

MySQL索引事务(一)

1、索引 1.1、概念 索引相当于一种特殊文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引类型,各类索引各自的结构实现。 1.2、作用 *通俗来讲,索引就相当于是我们的书本目录,…

电视、报纸、杂志、网络等曝光度好的媒体有哪些?

在当今社会,媒体是传递信息、宣传思想和引导社会舆论的重要平台。对于企业和个人而言,选择曝光度好的媒体来传递信息,是提高知名度和影响力的重要手段。那么,曝光度好的媒体有哪些呢?下面将从电视、报纸、杂志、网络等…

chatgpt赋能python:Python语言在SEO中的应用

Python语言在SEO中的应用 介绍 Python是一种易于学习,功能强大的高级编程语言,其优秀的性能和简单易用的开发方式,使其成为当前最受欢迎的语言之一。Python在各种应用场景中都有着广泛的应用,其中SEO领域更是不可忽视。Python可…

Tuxera for Mac2023中文版电脑读写硬盘U盘工具

在我们的日常学习和生活当中,因为小巧、便于携带等特性,U盘成为比较常用的移动存储设备。但在使用的过程中,也经常会遇到一些棘手的问题,例如:插入之后无法识别,或只能查看不能读写。那么,U盘不…

工欲善其事,必先利其器还是有必要的

uPic 图床配置教程 - Github 背景 最近发现上传图片的图床服务越来越难用,有的时候上传很慢,甚至会上传不上去。所以搜罗一波,本地实战搞起,巧了,这个软件不错,能达到起码得要求,正适合博客上…

MyBatis-Plus 可视化代码生成器来啦,开发效率提升2倍

前言 一、mybatis-plus-generator-ui是什么? 二、 mybatis-plus-generator-ui怎么用? 1、maven pom引入 2、新建程序入口,以main函数的方式运行 3、实例运行 三、mybatis-plus-generator-ui代码生成 1、Table的查询和浏览 2、输出配置 …

chatgpt赋能python:Python如何调字体大小的方法和步骤

Python如何调字体大小的方法和步骤 什么是调字体大小? 调字体大小是一种常见的文本编辑功能,可以通过更改文本中字号的大小,调整文本在屏幕上显示的大小。在Python编程中,也可以通过调整字体大小来改善程序界面的可读性。 如何…

Apple Vision Pro 内容开发制作

承接 Apple Vision Pro内容制作 3D模型制作 全新的平台。熟悉框架和工具。准备好为Apple Vision Pro设计和构建一个全新的应用程序和游戏世界。 沉浸 Apple Vision Pro提供了一个无限的空间画布来探索,实验和玩,让你自由地完全重新思考你的3D体验。人…

4.4 变量的线程安全分析

目录 4.4 变量的线程安全分析1、成员变量和静态变量是否线程安全?2、局部变量是否线程安全?3、局部变量线程安全分析4、常见线程安全类5、实例分析 4.5 习题1、卖票练习2、转账练习 4.4 变量的线程安全分析 1、成员变量和静态变量是否线程安全&#xff…

不止Chat,GPT-4 将释放更大生产力

目录 1.对 ChatGPT 的巨大超越 2.与 ChatGPT 相同的技术路线 3.GPT-4 背后的强大阵容 4.开启多模态大模型时代 相比 ChatGPT 能力有大进化,多模态上有突破但不多。 近日,多模态大模型 GPT-4 震撼登场! GPT-4 能够接受图像和文本输入&am…

读书笔记:从ChatGPT到AIGC:智能创作与应用赋能

文章目录 引爆内容生产力应用场景:ChatGPT的多场景应用传媒电商影视教育金融医疗 发展梳理:从PGC到UGC再到AIGCPGC:企业和平台是内容创作的主体UGC:用户成为内容创作主体AIGC 内容生成:AIGC涵盖多样的内容模态AI图像&a…