h5学习笔记:前端打包

这2天做了一个实验。在非module传统的网页,要实现改名和避免缓存。原本这个事情早在几年前就做过借助gulp的方式或者fis3 的工具来完成。然而随着nodejs 来到了24版本后,似乎nodejs的版本这事情就变动复杂多变了。

为什么那么麻烦?实际上开发一些静态的网页不需要引入到模块化的开发如import /export的写法,完全是可以省力气。然而有时候喜欢折腾,这个情况就遇到一个任务,如何打包?如何完成这样一个任务。目前能根据工具选择有vite/rollup rolldown ,webpackgulp,parcel,rspack 这些工具。
在这里插入图片描述

先说说早期工具,gulp的版本开发已经是落伍了,朋友推荐使用零配置的parcel。这个工具正如传说一样,没有什么配置。虽然官网提供api,我并没有很细看。但是也遇到一些版本变化的问题。由于ai的喂给的数据过于陈旧。很多时候,在和大模型对话过程,就会遇到各种折腾。一方面确实版本差异化,加上不熟悉。这些就导致打包的时候 parcel 1.x和2.x不同。 经过改成2.x 后才完成这样一个小小任务。

然后对于vite 也是可以完成这样一个情况。这个地方有小小改动。如加入module支持,这样日常当中,写css 和js 的方式,改成import 导入。这样打包也会比较快。

在这里插入图片描述
在这里插入图片描述
这个只是很小的实验样本。利用了import 特性。打包后会出现的方式。这种需要部署到服务器去才能看到。不能直接查看。
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>My Vite Site</title><!-- Vite 会自动注入 CSS 和 JS -->
</head>
<body><div id="app"></div><script type="module" src="./src/main.js"></script>
</body>
</html>

这个方式的实验实际上并不会太难。让我觉得意外的,如果不用module 那样写法。配置起来,哪怕AI 理解起来复杂是有点多余。事情会变得复杂,不是变动轻松。

相反各种webpack 的配置直接 劝退人。在完成非module 网页,parcel 可以更加便利。宣传0配置的情况,若果遇到一些改名或者文件夹导出的文件结构,有时候也会不知道如何入手。文档和官网是有提供。我并不是想去研究这个工具深入去。

在这里大大打了一个疑问?为什么把前端搞得那么复杂,让人无奈是,打包和构建的工具那么多,一个个又面对nodejs 的折腾。直接打开网页就能到。这难道不香吗?

其实有时候,面对复杂多变的模块化设计诉求。这些构建工具,parcel 还是vite,rolldown,rspack 也是有很多好处存在。

虽然AI的到来,这些复杂版本和工具化,包括各种工具的衰落期是不是到了一个边缘?统一构建和打包也是一种趋势了。
在这里插入图片描述
不得不得提一下nvm 和fnm的工具上,在管理和切换nodejs使用的时候,官方或者社区都有处理这样的事情。多版本已经不是什么秘密。使用过程和安装过程。fnm 虽然是rust编写。使用安装体验直接劝退不少人。

nvm 老牌管理工具,虽然nodejs 的版本,早期一些12 版本,早就不维护了。目前面对每年的版本号都会迭代。前端工具似乎变动越加激烈,稍微不慎,版本号就会让人产生很大老火。package.json 对于每一个库所依赖的情况。nodejs 并不是越新就越好。社区一旦跟不上。很多工具没有生态加持下,一个态度就足以让很多社会化的产品倒下。

rolldown 有更多想法吧。看下一代的打包和构建工具似乎会带来更多惊喜。个人喜欢在rspack 和rolldown 两者来回看了。
不知道你喜欢那些了?
但是我选,就简单傻瓜打包就足够了。那么多配置很多时候都不愿意去研究。天下对webpack 早已吐槽不止。

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

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

相关文章

14.OCR字符识别

目录 1. 识别方法 1. OCR识别 2. OCR识别方法1-助手识别 3. OCR识别方法2-算子分割识别 4.文本分割识别 2. 文本分割 1. 借用助手设置参数文本分割+混合识别 2. 借用助手设置参数文本分割场景2 3.不同字符场景 1.倾斜字符 1. 识别方法 1. OCR识别 *OCR *1. 概念 * …

如果将Word里每页的行数设置成50行

https://www.zhihu.com/question/357856175 本文来自知乎林听晴 第一步&#xff1a;新建一个Word文档 打开“页面布局”&#xff0c;之后点击图片圈起来的小图标&#xff0c;即可出现“页面设置”页面。 ​ ​ 路径&#xff1a;页面设置—文档网络&#xff0c;可以看到默认行…

WebRTC(十一):RTCP和SRTCP

RTCP 基本概念 RTCP 是 RTP 的控制协议&#xff0c;用于监控媒体传输质量和参与者状态&#xff0c;并与 RTP 一起工作。RTP 用于传输媒体数据&#xff08;如音视频&#xff09;&#xff0c;RTCP 则用于传输控制信息。 RTCP 通常和 RTP 同时使用&#xff0c;并通过 不同端口&…

将element-plus table背景改成透明色

方法一:全局修改(推荐) /* 全局透明表格样式 */ .el-table, .el-table__header-wrapper, .el-table__body-wrapper, .el-table__row {background-color: transparent !important; }/* 可选:自定义表头和斑马纹行的透明度 */ .el-table__header th {background-color: rgba(…

安全运营中的漏洞管理和相关KPI

漏洞管理一直是企业网络安全运维中的关键环节,但又是安全运维的痛点。不仅要投入大量的人力物力,还无法被其他运维团队所理解。那么,向领导层和相关团队反映出当前漏洞管理的现状和挑战便是一个急需解决的问题。 通过有效的数据讲好故事,发现问题,或许是做好漏洞管理的突破…

机器学习框架(1)

以吴恩达的《机器学习》课程为蓝本&#xff0c;整理课程框架&#xff0c;自己学习的简单记录。 课程讲解很清楚&#xff0c;建议有空可以看看原课程。 01 单变量线性回归 回归偏向于连续属性&#xff0c;分类偏向于离散属性。 监督学习是给定标签的学习&#xff1b;而无监督学…

AI Ready数据库,OceanBase打了一个样

大数据产业创新服务媒体 ——聚焦数据 改变商业 过去一年&#xff0c;企业对AI的兴趣不减。从接入大模型&#xff0c;到部署RAG&#xff08;检索增强生成&#xff09;系统、探索AI Agent&#xff0c;AI从“新技术”变成了“业务工具”的候选项。但一个技术能否真正落地&#x…

趣味数据结构之——链

记得数组吗&#xff0c;一个萝卜一个坑的想象。在数组的世界里我们就是第三视角&#xff0c;置身于坑外的。如果我们是二维平面上的生物&#xff0c;那数组就是一维的线&#xff0c;我们可以随机访问&#xff0c;增删查改&#xff0c;也可以一眼看出数组大小。 那么对于链来说…

构建低代码平台的技术解析

低代码平台表单引擎与业务事件设计实践 低代码平台表单引擎与业务事件设计实践一、什么是低代码&#xff1f;它能做什么&#xff1f;二、请假系统案例介绍2.1 主要功能2.2 业务流程 三、表单元数据、实例数据与业务事件联动设计3.1 表单元数据&#xff08;Meta&#xff09;如何…

Hive SQL 快速入门指南

在大数据蓬勃发展的当下&#xff0c;处理海量数据成为企业面临的关键挑战。Hive SQL 作为一款强大的工具&#xff0c;为我们打开了高效处理大数据的大门。接下来&#xff0c;让我们一起踏上 Hive SQL 的入门之旅。​ 一、Hive SQL 是什么​ Hive 是基于 Hadoop 的数据仓库工具…

国内公司把数据湖做成了数据库

在做多年的数据仓库项目&#xff0c;数据湖也在做&#xff0c;但是做完发现&#xff0c;这个不是传统数据库里面的ODS吗&#xff1f; 好多公司做数据湖&#xff0c;就是把数据湖做成了ODS层&#xff08;贴源数据层&#xff09;&#xff0c;难道真的数据湖就是这样等于ODS吗&am…

Python 数据分析与可视化 Day 6 - 可视化整合报告实战

&#x1f3af; 今日目标 整合数据分析与可视化结果生成结构化报告用代码自动生成完整的图文分析文档熟悉 Jupyter Notebook / Markdown 图表 报告生成流程 &#x1f9e9; 一、项目背景&#xff1a;学生成绩分析报告 数据来源&#xff1a;students_cleaned.csv&#xff08;含姓…

服务器、树莓派/香橙派部署HomeAssistant与小爱音箱联动

HomeAssistant功能介绍与多平台部署实战&#xff1a;CentOS服务器、树莓派、香橙派部署及小爱音箱联动控制 一、HomeAssistant简介 HomeAssistant是一款基于Python开发的开源智能家居自动化平台&#xff0c;它最大的特点是高度集成和自定义。通过HomeAssistant&#xff0c;用…

内存泄漏系列专题分析之二十四:内存泄漏测试Camera相机进程内存指标分布report概述

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 内存泄漏系列专题分析之二十四:内存泄漏测试Camera相机进程内存指标分布report概述 目录 一、问题背景 二、:内存泄漏测试Camera相机进程内存指标分布report概述 2.1:Camera领域相机进…

华为堆叠理论及配置

一&#xff0c;堆叠基本概念 1.1交换机角色 主交换机&#xff08;Master&#xff09;&#xff1a;主交换机负责管理整个堆叠。**堆叠系统中只有一台主交换机。**备交换机&#xff08;Standby&#xff09;&#xff1a;备交换机是主交换机的备份交换机。堆叠系统中只有一台备交换…

【数字经济】数据即产品架构在数字经济时代的应用

数据即产品架构在数字经济时代的应用 在数字经济中&#xff0c;数据已成为核心生产要素&#xff0c;“数据即产品”&#xff08;Data-as-a-Product&#xff09;架构通过系统化封装原始数据&#xff0c;实现其可交易、可交付的产品化价值。以下是其架构设计与应用解析&#xff…

MySQL 中的时间序列数据分析与处理

在互联网应用和企业业务系统中&#xff0c;特别是现在当下环境电商以及跨境电商火爆的情况下&#xff0c;时间序列数据无处不在&#xff0c;如电商订单时间、用户登录日志、设备监控数据等。MySQL 作为主流数据库&#xff0c;具备强大的时间序列数据处理能力。本文将结合电商订…

STM32——MDK5编译和串口下载程序+启动模式

一、MDK5编译 1.1 编译中间文件 还可通过 .map文件计算程序大小 中间文件 > 下载到开发板中的文件 > .hex 二、串口下载 2.1 前提须知 2.2 串口硬件链接&#xff08;M3、M4系列&#xff09; M7无串口下载 PC端需安装 CH340 USB 虚拟串口驱动&#xff1a;CH340 USB 虚…

HyperWorks仿真案例:拓扑优化与激光增材制造的完美结合挖掘轻量化结构的新潜力

许多技术创新都基于自然界中生物结构的设计。通过不断进化&#xff0c;大自然在数百万年间已学会根据各种形状的功能对形状进行调整&#xff0c;从而最大程度地提高效率。当工程师设法构建坚固而轻盈的结构时&#xff0c;这些自然界中的示例可以提供重要线索。在目前的研究项目…

在Windows系统部署本地智能问答系统:基于百度云API完整教程

引言 在人工智能时代&#xff0c;搭建私有化智能问答系统能有效保护数据隐私并提升响应效率。本教程将手把手教你在Windows环境中&#xff0c;通过百度云API构建专属智能问答系统&#xff0c;全程无需服务器&#xff0c;仅需本地计算机即可运行&#xff01; 一、环境准备 系统…