【快速搞定Webpack4】介绍及基本使用(一)

news2025/1/11 21:48:45

webpack 是一个静态资源打包工具。

他会以一个或多个文件作为打包的入口,将我们整个项目所有文件编译组合成一个或多个文件输出出去。
输出的文件就是编译好的文件,就可以在浏览器端运行了。
我们将 webpack 输出的文件叫做 bundle
(将浏览器不识别的语法编译成识别的语法)
在这里插入图片描述

功能介绍

webpack本身功能是有限的:

  • 开发模式:仅仅能变易js中的 ES Module 语法。
  • 生产模式:能变易js中的 ES Module 语法,还能压缩代码。

开始使用

1、资源目录

├── dist				# 打包目录
│   └── main.js		# 打包文件
├── package-lock.json
├── package.json		# 包配置文件
├── public			# 静态资源目录
│   └── index.html
└── src				# 项目源码目录
├── js				# js文件目录
│   ├── count.js
│   └── sum.js
└── main.js			# 项目主文件

在这里插入图片描述

2、创建文件

● count.js

export default function count(x, y) {
    return x - y;
}

● sum.js

export default function sum(...args) {
    return args.reduce((p, c) => p + c, 0);
}

● main.js

import count from "./js/count";
import sum from "./js/sum";

console.log(5, 2);

console.log(sum(1, 2, 3, 4));

3、下载依赖

打开终端,进入项目根目录,运行命令:
● 初始化 package.json

npm init -y

此时,会生成一个基础的package.json文件。
需要注意的是package.json中的name字段不能叫做webpack,否则下一步会报错(你的项目目录也不能叫package

● 下载依赖

npm i webpack webpack-cli -D

ps: -D 加入项目依赖

4、启用Webpack

● 开发模式(development)

npx webpack ./src/main.js --mode=development

● 生产模式(production

npx webpack ./src/main.js --mode=production

npx webpack:是用来运行本地安装webpack包的。
./src/main.js:是制定webpackmain.js文件开始打包,但不会打包main.js,还会将其他依赖也一起打包进来。
--mode=xxx:指定模式(环境)。

5、观察输出文件

默认webpack会将文件打包输出到dist目录下,我们查看dist目录下的文件情况就OK了。

小结

webpack本身功能比较少,只能处理js资源,一旦遇到css等其他资源就会报错。
所以我们学习webpack,就是主要学习如何处理其他资源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1459720.html

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

相关文章

第十三章[管理]:13.3:pycharm的常用设置

一,pycharm配置注释模板 1,打开配置界面: pycharm->preference 英文:Editor->File and Code Templates->Python Script 中文:编辑器->文件和代码模板->Python Script 如图: 我们输入的内容: # @Project : ${PROJECT_NAME} # @File : ${NAME}.py # @Author …

notepad++的下载与使用

1.进入官网下载 https://notepad-plus-plus.org/ 点击下载即可 2.选择中文简体 3.建议安装在D盘 其余步骤按照指示就行 4.安装后这几个是必选的 设置完成后就可以写中文了 以此为例 结果为

HarmonyOS(二十)——管理应用拥有的状态之LocalStorage(页面级UI状态存储)

LocalStorage是页面级的UI状态存储,通过Entry装饰器接收的参数可以在页面内共享同一个LocalStorage实例。LocalStorage也可以在UIAbility实例内,在页面间共享状态。 本文仅介绍LocalStorage使用场景和相关的装饰器:LocalStorageProp和LocalS…

k8s除了可以直接运行docker镜像之外,还可以运行什么? springboot项目打包成的压缩包可以直接运行在docker容器中吗?

Kubernetes(k8s)主要设计用于自动部署、扩展和管理容器化应用程序。虽然它与Docker容器最为密切相关,Kubernetes实际上是与容器运行时技术无关的,这意味着它不仅仅能够管理Docker容器。Kubernetes支持多种容器运行时,包…

ELK入门(一)-Elasticsearch(docker版)

Elasticsearch Elasticsearch安装(docker) 下载Elasticsearch 查询镜像 [rootlocalhost elk]# docker search elasticsearch NAME DESCRIPTION STARS OFFICIAL AUTOMATED elasticsearch …

Flutter学习1 - Android开发者快速上手

1、对应关系 概念对应关系 AndroidFlutter页面Activity和FragmentWidget视图ViewWidget页面跳转IntentNavigater网络库okHttphttp数据存储SharedPreference和SQLiteshared_preferences和sqflite 布局对应关系 AndroidFlutter布局文件xmlWidget线性布局LinearLayoutRow和Col…

SAP PP学习笔记 - 豆知识06 - 如何使用分类系统查找品目

PP模块,之前学习PP模块主数据的时候,其中一个主数据叫分类系统(Classification View)。 它的用处是定义一些SAP没提供的特殊字段,以做查询,分析用。 有关分类系统的详细,可以参照如下文章。 …

Oracle 如何提高空间使用率?

一,行迁移和行链接。 oracle尽量保证一行的数据能够放在同一个数据块当中,有的时候行会发生行迁移和行链接。 行链接 :有一个列的字段是大对象(long,longlong)一行占的数据一整个块都放不下,则…

如何在Excel中冻结行或列标题?这里提供两种方法

随着数据的增长,许多Excel工作表可能会变得很大,因此冻结行和列标题或冻结窗格非常有用,以便在滚动工作表时将标题锁定到位。在Excel中,可以冻结行标题和列标题,也可以只冻结一个。这不会影响将要打印的单元格。列标题…

力扣精选算法100道——提莫攻击(模拟专题)

目录 🚩题目解析 🚩算法原理 🚩实现代码 🚩题目解析 输入:timeSeries [1,4], duration 2 输出:4 解释:提莫攻击对艾希的影响如下: - 第 1 秒,提莫攻击艾希并使其立即…

Jenkins 2.426.3新版设置中文

1. 插件页面显示无法联网 ,点击Plugins一直提示连接超时,设置公司代理后 2. 稍等一会儿点击如下图,插件就出来了,然后输入Locale进行下载 3. 以下是我下载安装好的 4.打开设置,找到Locale选项,设置成zh_CN…

域名 SSL 证书信息解析 API 数据接口

域名 SSL 证书信息解析 API 数据接口 网络工具,提供域名 SSL 证书信息解析,多信息查询,毫秒级响应。 1. 产品功能 提供域名 SSL 证书信息解析;最完整 SSL 属性信息解析;支持多种元素信息抽取,包括主题的可…

keepalived双主模式测试

文章目录 环境准备部署安装keepavlived配置启动测试模拟Nginx宕机重新启动问题分析 环境准备 测试一下keepalived的双主模式,所谓双主模式就是两个keepavlied节点各持有一个/组虚IP,默认情况下,二者互为主备,同时对外提供服务&am…

Ps:颜色表

Ps菜单:图像/模式/颜色表 Image/Mode/Color Table 使用颜色表 Color Table命令可以查看和更改“索引颜色”模式下图像使用的颜色表。 ◆ ◆ ◆ 使用方法与技巧 通过“颜色表”对话框,可以编辑颜色表中的颜色以产生特殊效果,或者将图像中的透…

web安全学习笔记【12】——信息打点(2)

信息打点-Web应用&源码泄漏&开源闭源&指纹识别&GIT&SVN&DS&备份 #知识点: 1、业务资产-应用类型分类 2、Web单域名获取-接口查询 3、Web子域名获取-解析枚举 4、Web架构资产-平台指纹识别 ------------------------------------ 1、开源…

vue 非父子通信-event bus 事件总线

1.作用 非父子组件之间,进行简易消息传递。(复杂场景→ Vuex) 2.步骤 创建一个都能访问的事件总线 (空Vue实例) import Vue from vue const Bus new Vue() export default Bus A组件(接受方),监听Bus的…

钉钉小程序 访问ip不在白名单之中

钉钉小程序 访问ip不在白名单之中 problem 钉钉官方自带免登陆小程序 后端接口报错 {"errcode":60020,"errmsg":"访问ip不在白名单之中,请参考FAQ:https://open.dingtalk.com/document/org-faq/app-faq,request ip175.2.2.52…

开源软件的利弊

目录 开源软件 优势 免费 透明 可更改 可协作 影响力 坏处 安全隐患 良莠不齐 学习成本 持续性问题 未知风险 开源软件 开源软件是一种基于开放协作和共享的软件开发模式,其利弊对于软件产业和社会发展具有重要意义 优势 免费 谁能拒绝不要钱的东西…

SQL-2

刷题知识点: null不能用这种判断,要用is null 或者is not null 或者可用 ifnull来判断。 明确:数据库DB是数据存储仓库。 数据库管理系统(Database management system,DBMS),是操纵和管理数据库…

AI之Sora:Sora(文本指令生成视频的里程碑模型)的简介(能力/安全性/技术细节)、使用方法、案例应用之详细攻略

AI之Sora:Sora(文本指令生成视频的里程碑模型)的简介(能力/安全性/技术细节)、使用方法、案例应用之详细攻略 导读:Sora 是OpenAI研发的一个可以根据文字描述生成视频的AI模型。它的主要特性、功能以及OpenAI在安全和应用方面的策略的核心要点如下所示&a…