打包的意义 作用等前端概念集合 webpack基础配置等

基础网页是什么?

在学校最基础的三剑客 原生JS CSS H5就可以开发静态网页了
对于浏览器而言也能识别这些基础的文件和语法,真正的所见即所得,非常直接。

为什么要使用框架库?

对于常用的前端框架而言,无论是Vue React angular
他们相比原生JS有以下优点:

  • 他们既能脚手架工具几行命令就可以快速搭建项目。
  • 又能减少大量的重复代码,结构更加清晰,可读性强。
  • 还有丰富的UI库和插件库。

而Jquery作为最常见的JS扩展库,和框架并不相同。相当于用砖头水泥沙子盖房子的话,那么用框架就相当于一个房间一个房间的搭建房子。

为什么要打包?

在使用了以上框架库,甚至是Scss、Less等CSS 预处理器,如果不进行打包,浏览器是无法识别的。要通过webpack等打包工具:
一方面将框架和预处理器等文件编译成浏览器可以识别的普通js css,
另一方面把多个文件合并成一个文件,还涉及到压缩。

而使用webpack对项目进行打包发布的主要原因有两点:

①开发环境之下,打包生成的文件存放于内存中,无法获取到最终打包生成的文件
②开发环境之下,打包生成的文件不会进行代码压缩和心梗优化,为了让项目能够在生产环境中高性能的运营,因此需要对项目进行打包发布。

如何配置打包?

配置 webpack 的打包发布

在 package.json 文件的 scripts 节点下,新增 build 命令如下:
在这里插入图片描述
–model 是一个参数项,用来指定 webpack 的运行模式。production 代表生产环境,会对打包生成的文件进行代码压缩和性能优化。注意:通过 --model 指定的参数项,会覆盖 webpack.config.js 中的 model 选项。

把 JavaScript 文件统一生成到 js 目录中

在 webpack.config.js 配置文件的 output 节点中,进行如下的配置:在这里插入图片描述

把图片文件统一生成到 image 目录中

修改 webpack.config.js 中的 url-loader 配置项,新增 outputPath 选项即可指定图片文件的输出路径:
在这里插入图片描述

自动清理 dist 目录下的旧文件:

为了在每次打包发布时自动清理掉 dist 目录中的旧文件,可以安装并配置 clean-webpack-plugin 插件:在这里插入图片描述

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

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

相关文章

Unity和iOS 原生专题一 unity打包设置C#设置 Xcode添加OTHER_LDFLAGS和Info.plist设置

一、 获取 PBXProject PBXProject的很多操作都是通过guid的 var pbxProject new PBXProject(); 二 、获取projectPath var projectPath PBXProject.GetPBXProjectPath(iosProjectPath); 三 、读取pbxProject 文件 pbxProject.ReadFromFile(projectPath); 四 、 读取Uni…

普通屏幕已过时?裸眼3D屏幕显示效果更胜一筹!

随着多媒体技术的迅猛进步,我们日常生活中的内容展现方式,已经经历了前所未有的变革。在这其中,裸眼3D屏幕的应用,无疑是最为引人注目的亮点,它相较于传统屏幕,在显示效果上展现出了鲜明的优势,…

RGB灯珠的控制-单片机通用模板

RGB灯珠的控制-单片机通用模板 一、RGB控制的原理二、RGB.c的实现三、RGB.h的实现四、color色彩空间变换以及控制渐变一、RGB控制的原理 ①通过IO发送脉冲识别0/1编码,组合24Bit的RGB数据,从而控制RGB;②每个RGB灯珠通过DIN、DOU进行级联起来;③通过HSV色彩转换成RGB从而控…

ArcGIS批量寻找图层要素中的空洞

空洞指的是图层中被要素包围所形成的没有被要素覆盖的地方,当图层要素数量非常庞大时,寻找这些空洞就不能一个一个的通过目测去寻找了,需要通过使用工具来实现这一目标。 一、【要素转线】工具 利用【要素转线】工具可以将空洞同图层要素处于…

【触摸案例-多点触摸的案例 Objective-C语言】

一、我们来做这个多点触摸的案例 1.首先呢,按着这个option键啊,可以模拟多点触摸, 然后呢,再去怎么着去画圈儿, 它这个里边就会产生一个imageView,跟着你去变,会有这么一个效果, 那么,首先啊,我们新建一个项目, Name:03-多点触摸的案例 1)首先,我们把控制器的v…

Xcode for Mac:强大易用的集成开发环境

Xcode for Mac是一款专为苹果开发者打造的集成开发环境(IDE),它集成了代码编辑器、编译器、调试器等一系列开发工具,让开发者能够在同一界面内完成应用的开发、测试和调试工作。 Xcode for Mac v15.2正式版下载 Xcode支持多种编程…

【OpenCV】(一)wechat_qrcode检测二维码

一、注意: opencv-4.8.0之前的版本wechat_qrcode检测二维码是矩形检测; opencv-4.8.0的版本wechat_qrcode检测二维码是关键点检测; 二、C代码 代码目前是通用的(仅在opencv-4.5.5、opencv-4.8.1上测试过)&#xff1…

ShardingSphere 5.x 系列【25】 数据分片原理之 SQL 解析

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.1.0 本系列ShardingSphere 版本 5.4.0 源码地址:https://gitee.com/pearl-organization/study-sharding-sphere-demo 文章目录 1. 分片执行流程1.1 Simple Push Down1.2 SQL Federation2. SQL 解析2.1 解析…

力扣700,二叉搜索树中的搜索

700. 二叉搜索树中的搜索 - 力扣(LeetCode) 法1,递归 给定二叉搜索树(BST)的根节点 root 和一个整数值 val。 你需要在 BST 中找到节点值等于 val 的节点。 返回以该节点为根的子树。 如果节点不存在,则返…

道可云元宇宙每日资讯|苹果推出开放语言模型OpenELM

道可云元宇宙每日简报(2024年4月26日)讯,今日元宇宙新鲜事有: 工信部发布中关村园区建设方案:加快突破元宇宙核心技术 4 月 25 日,工业和信息化部、科学技术部、北京市人民政府印发了《中关村世界领先科技…

分布式WEB应用中会话管理的变迁之路

Session一词直译为“会话”,意指有始有终的一系列动作/消息。Session是Web应用蓬勃发展的产物之一,在Web应用中隐含有“面向连接”和“状态保持”两个含义,同时也指代了Web服务器与客户端之间进行状态保持的解决方案。 在Web应用…

web server apache tomcat11-23-APR

前言 整理这个官方翻译的系列,原因是网上大部分的 tomcat 版本比较旧,此版本为 v11 最新的版本。 开源项目 从零手写实现 tomcat minicat 别称【嗅虎】心有猛虎,轻嗅蔷薇。 系列文章 web server apache tomcat11-01-官方文档入门介绍 web…

基于JAVA实现的推箱子小游戏

Java推箱子小游戏实现: 推箱子小游戏曾经在我们的童年给我们带来了很多乐趣。推箱子这款游戏现在基本上没人玩了,甚至在新一代人的印象中都已毫无记忆了。。。但是,这款游戏可以在一定程度上锻炼自己的编程能力。 窗口画面设计:i…

8点法估计基础矩阵

估计基础矩阵 文章目录 估计基础矩阵8点法归一化 8点法 8点法 根据两幅图像中8个对应点对之间的关系,采用SVD求 解最小二乘方 约束:det(F) 0 假设已知N对点的对应关系: { x i , x i ′ } i 1 N \{x_i,x^{\prime}_i\}_{i1}^N {xi​,xi′​…

Mysql索引规范及原理分析

1 Mysql存储引擎 MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎。 存储引擎是MySQL将数据存储在文件系统中的存储方…

【打工日常】云原生之部署个人使用的高速下载器Gopeed

​一、Gopeed介绍1.Gopeed简介 Gopeed(全称 Go Speed),直译过来中文名叫做够快下载器(不是狗屁下载器!),是一款由 Golang + Flutter 开发的高速下载器,支持(HTTP、BitTorrent、Magnet)协议下载,并且支持所有平台使用。支持的平台:Windows,Macos,Linux,Android,…

Pytorch 的神经网络 学习笔记

参照官方网址 Module — PyTorch 2.2 documentation 一. 介绍 1. torch.nn模块: torch.nn是PyTorch中专门用于构建神经网络的模块。它提供了构建深度学习模型所需的所有构建块,包括各种层类型(如全连接层、卷积层、循环层等)、…

SkyWalking 自定义Span并接入告警

图容易被CSDN吞掉,我在掘金也发了:https://juejin.cn/post/7361821913398837248 我就是这么膨胀 最近在做 OpenAI API 套壳,当我使用 okhttp-sse 这个库进行流式内容转发的时候,我发现有些回调方法 SkyWalking 不能抓取到。这就…

在no branch上commmit后,再切换到其他分支,找不到no branch分支的修改怎么办?

解决办法 通过git reflog我们可以查看历史提交记录,这里的第二条提交(fbd3ea8)就是我在no branch上的提交。 再通过git checkout -b backup fbd3ea8,恢复到上次提交的状态,并且为其创建个分支backup,此时…

跳出框架:Facebook的创新策略与社交影响

1. 引言 在数字化时代,社交媒体如同一面镜子,反映出我们社会的多元性和变革。Facebook,作为这面镜子中最明亮的一个,不仅改变了人们的日常生活,更深刻地塑造了社交、文化和经济的面貌。本文将深入探讨Facebook的创新策…