【Vue】如何使用Webpack实现打包操作

embedded/2024/10/19 7:28:29/

一、Webpack介绍

   Webpack最主要的作用就是打包操作,由两个核心部分构成分别是“出口”与“入口”。wbepack是现在比较热门的打包工具了,它可以将许多松散耦合的模块按照依赖和规则打包成符合生产环境部署的前端资源。说的直白一点,通过webpack打包操作,我们可以把原来的js文件通过打包,需要使用的时候直接引用,这样可以实现模块化开发,当然它的功能还不止于此。本文就介绍一个简单的打包操作和其相关的基础知识点。

二、安装Webpack

1、安装

指令①:

npm install webpack -g

a0ca7fa616a54f6e9cfc20175e4aefaa.png

指令②:

npm install webpack-cli -g

a22d54273dfe48eda71a289f578e01ea.png

查看安装是否成功:

webpack -v

webpack-cli -v

2、配置

创建webpack.config.js配置文件的一些属性

entry : 入口文件,指定webpack打包从那个文件作为项目入口

output : 出口,将指定的webpack放置到指定路劲

module : 模块,用于处理各种类型文件

plugins : 插件,引入的外部资源如scriptlink,也可以用于代码重用等

resolve : 设置路径的指向

watch : 监听功能

三、实操Webpack

1、创建一个webpack的文件夹

46602bbea883402a8a99dfc7df08d1e9.png

2、用IDEA打开项目并创建modules包

29a82a37d31d41daaa1a49d7bd089ed4.png

3、在modules包下写JS相关文件

5194637a2b3141168c0244877621e363.png

4、再在modules包下写main.js的入口文件,用于打包时的设置entry属性

3539abf0f679418988f50a7705420a5f.png

5、在目录项创建webpack.config.js配置文件,用于打包

7d40b3a6f5d045599a7b36b92fe2b003.png

6、在终端控制台使用webpack进行打包

指令:webpack

562b854a61e94be3ac81fdeae8c5731a.png

此时,idea根目录多一个dist包,里面有打包好的js文件。

d1a5cb70d98a4005a33512f61b671cdc.png

7、直接引用打包好的文件

创建一个index.htm主入口文件,将我们打包好的js文件通过<script>引入,运行。

3ba9f4b1fddf495fb0221146816e5f95.png

效果:

945de78545c1450b82b64ff358964133.png

四、Webpack打包原理

ee20013e90084e7f9dd32391ac7ec5b8.png

如图是webpack通过我们的webpack.config.js进行打包的基本流程,希望对大家有所帮助。

五、总结

   其实,我觉得这个webpack打包更有意思的,把我们的源文件进行压缩后,可以直接调用或者运行。我之前玩过一段时间的小程序,当时有个人给了我一个程序代码就是打包过后的(当时自己还不知道打包这个东东),这个程序可以用小程序直接运行,但是那么代码就看不懂,让自己困惑了好一段时间。当然现在自己学的比较多,之前不同的地方来慢慢清晰了起来。为什么要说这个事呢?其实是希望在屏幕前看这篇博客的小伙伴能够不忘初心,砥砺前行。那些让你现在迷惑的,搞不懂的,终有一天,你会把所有的细节,所以的内部把内容都搞明白的!加油!各位!

 


http://www.ppmy.cn/embedded/20778.html

相关文章

深度学习-线性代数

目录 标量向量矩阵特殊矩阵特征向量和特征值 标量由只有一个元素的张量表示将向量视为标量值组成的列表通过张量的索引来访问任一元素访问张量的长度只有一个轴的张量&#xff0c;形状只有一个元素通过指定两个分量m和n来创建一个形状为mn的矩阵矩阵的转置对称矩阵的转置逻辑运…

TCP案例之单聊与群聊

TCP案例之单聊与群聊 一、TCP案例之单聊 在基于TCP协议的单聊应用中&#xff0c;通常涉及客户端和服务器端的交互。 服务器端 建立服务器&#xff1a; 服务器端创建一个TCP Socket并绑定到一个特定的端口&#xff0c;开始监听来自客户端的连接请求。 接受连接&#xff1a; …

四、Flask进阶

Flask-Cache pip install flask-caching安装flask_cache初始化 # ext.py from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate from flask_caching import Cachedb SQLAlchemy() migrate Migrate() cache Cache(config{CACHE_TYPE: simple # 缓存…

探索矿业数字化平台:实现智能化采矿与管理

随着信息技术的迅猛发展&#xff0c;矿业领域也在逐步实现数字化转型。数字化平台的出现为矿业企业带来了更高效、更智能的采矿与管理方式。本文将探讨矿业数字化平台的意义、特点以及未来发展方向。 ### 1. 数字化平台的意义 传统的矿业生产和管理方式存在诸多问题&#xff…

《数据结构》(学习笔记)(王道)

一、绪论 1.1 数据结构的基本概念 数据&#xff1a;是信息的载体&#xff0c;是描述客观事物属性的数、字符以及所有输入到计算机中并被计算机程序识别和处理的符号的集合。&#xff08;计算机程序加工的原料&#xff09;数据元素&#xff1a;数据的基本单位&#xff0c;由若干…

机器学习-期末复习

本文的内容按照作者的课程考试要求书写&#xff0c;仅供复习参考。&#x1f337;&#x1f337;&#x1f337;欢迎大家指正&#xff01; 机器学习是一种人工智能&#xff08;AI&#xff09;的分支领域&#xff0c;它致力于开发能够通过数据学习和改进的算法和模型。简而言之&…

AtCoder Regular Contest 176 C. Max Permutation(计数 分类讨论)

题目 思路来源 乱搞ac 题解 1. 如果有边的权值是1&#xff0c;意味着有两个点的权值都是1&#xff0c;无解 2. 如果一个点i被多个max条件控制&#xff0c;它的值不能超过这些max里最小的那个&#xff0c;记做up[i] 3. 如果同一个权值w对应的边不少于2条&#xff0c;这些边…

SpringBoot集成Log2j4指定外部配置文件源码解读

一、背景 程序读取外部log4j2.xml配置文件方式为启动命令添加了--logging.config/path/log4j2.xml&#xff0c;因系统安全整改&#xff0c;将/var/log/目录改为了700&#xff0c;程序使用非root启动时log4j2报错无法在/var/log目录下创建日志文件。经排查发现jar包的classpath…