首页 > 其他分享 >前端项目打包

前端项目打包

时间:2022-10-15 23:22:55浏览次数:52  
标签:ES6 浏览器 请求 项目 前端 代码 打包 页面

打包是在做什么

前端写代码时为了方便会将代码写在许多文件中(模块化,方便代码后期维护与功能升级等),但是转化成HTML代码时,会使用<script>标签进行引入js代码,这样会使页面在渲染时衍生更多的http请求各个静态资源,页面加载耗能增加。使用打包过后将许多零碎的文件打包成一个整体,页面只需请求一次,js文件中使用模块化互相引用(export、import ),这样能在一定程度上提供页面渲染效率。
打包同时会进行编译,将ES6、Sass等高级语法进行转换编译,以兼容高版本的浏览器。

必须要打包吗?

上文提到的HTML需要引用有很多文件会导致请求的数量很多,但如果页面请求一次的话页面需要将许多次请求压缩成一次,就会导致页面第一次加载很慢,这也是打包过程中的一个弊端。
但是反过来想,假如这个工程很小,那么打包还是必需的吗?为了提升一点点的效率需要多加很多的工作量,这样明显是划不来的。
其次,打包另一个重要作用是编译,将浏览器无法识别的ES6等高级语法编辑成浏览器可识别的ES5语法,但假如有一天浏览器可以识别ES6甚至ES7等语法,那么Babel、webpack就不是必须的了。

但是目前为止浏览器版本、项目量级导致现在打包还是比较有必要的。

怎么打包

现在比较流行的打包工具有Webpack、Gulp、Grunt。

但是Gulp、Grunt与其说是打包工具不如说是构建工具。

标签:ES6,浏览器,请求,项目,前端,代码,打包,页面
From: https://www.cnblogs.com/hhddd-1024/p/16795340.html

相关文章

  • Typescript助力项目开发:JS切换TS、TS类型定制与思考
    TS已经成为可以帮助项目顺利开发的存在了。在上半年笔者就被要求采用TS开发新的项目,并在一些老项目中用TS去改造(因为沟通原因我以为某个远程组件只有TS版本)。在其中也有了一......
  • vue项目中进度条(步骤进度条)和tag标签页的对象对应链条切换...
    进度条(步骤进度条)和tag标签页的对象对应链条切换...思路:对于tag标签来说有个v-model=’activeName’属性,指向与name属性(通过索引来指向01234等)对于步骤进度条来......
  • 练手项目开发
    A操作系统项目1:TCP客户端和服务端发送文件项目描述发送接受文件和图片知识点抓包工具wireshark项目2:UDP客户端和服务器项目3:多进程/多线程,多TCP客户端连接服务......
  • JSTL下载jar包和放到项目中
    JSTL一、下载jar包从Apache的标准标签库下载网址:Indexof/dist/jakarta/taglibs/standard/binaries(apache.org)选择jakarta-taglibs-standard-1.1.2进行下载......
  • .Net Core后端项目部署在Centos 7
    【安装.Net框架】安装.NET之前,请运行以下命令,将Microsoft包签名密钥添加到受信任密钥列表,并添加Microsoft包存储库。打开终端并运行以下命令:sudorpm-Uvhhttps:......
  • 01项目了解
    1.前后端交互   2.dto:数据传输对象,不往数据库里存储,用来接收页面过来的数据  公共分页请求对象======importlombok.Setter;/***公共分页请求对象*/......
  • 前端Vue2-Day51
    自定义指令:函数式/对象式://函数式directives:{//指令与元素成功绑定时执行。//指令所在模板被重新解析时也执行,......
  • vue项目时间毫秒转换成标准时间显示(过滤器的使用方法)
    vue项目中有个时间轴,需要转换成标准的年月日的格式打印思路:先vue的文件引入文件main.js里面进行过滤器全局注册,过滤器的处理的处理函数中做转换处理,,在vue表单里应用过......
  • 前端枚举enum的应用(Element)封装
    什么是枚举Enum枚举Enum是在众多语言中都有的一种数据类型,JavaScript中还没有(TypeScript有)。用来表示一些特定类别的常量数据,如性别、学历、方向、账户状态等,项目开发中......
  • Docker部署springboot项目
    建立Dockerfile文件FROMjava:8       基于jdk创建VOLUME/tmp      创建临时文件目录ADDch3-boot.jarch3-boot.jar      复制......