官方地址:https://parceljs.org/getting_...

Parcel 是 Web 应用打包工具,适用于经验不同的开发者。它利用多核处理提供了极快的速度,并且不需要任何配置。

特性

  • 快速打包:多核编译,以及文件系统缓存,即使在重新启动之后也能快速重新构建。
  • 支持JS、CSS、HTML、文件资源等,不需要安装任何插件。
  • 在需要的时候自动使用Babel、PostCSS和PostHTML自动转换模块,甚至是node_modules。
  • 零配置,代码拆分,使用动态import语句分隔。
  • 内置支持模块热替换。
  • 友好的错误记录体验,语法突出显示的代码帧有助于查明问题。

工作方式

parcel 将资源树转换为 bundle 树。许多其它的打包工具基本上都是基于 JS 资源,其它格式都是粘贴的-例如,默认情况下以字符串的形式内嵌到 JS 中。parcel 是文件类型无关的-它可以按照你期望的方式与任何类型的资源一起工作,无需配置。

parcel 将一个入口点作为输入,可以是任何类型的:JS文件,HTML,CSS,image 等。在 parcel 中定义了各种资源类型,它们知道如何处理特定的资源类型。资源文件被解析,它的依赖关系被提取,并转换成最终的编译形式。这创建了一个资源树。

一旦资源树被构建,资源就被放入一个bundle树中。为入口资源创建一个 bundle,并为动态导入的资源创建子 bundle,这回导致代码拆分的发生。当导入不同类型的资源的时候就会创建子 bundle,例如如果你在 JavaScript 中导入 CSS 文件,它就会打包成对应 JavaScript 的兄弟 bundle。如果一个资源需要多个bundle,它会被打包到最近的共同祖先,因此它不会被包含多次。

在构建bundle树之后,每一个包都有特定的文件类型的包装器写入文件。打包器知道如何将每个资源的代码合并到由浏览器加载的最终文件中。

入门

  1. 安装

    yarn global add parcel-bundler

    npm install -g parcel-bundler

  2. Parcel 可以将任何类型的文件作为 entry point(入口点),但是 HTML 或 JavaScript 文件是一个很好的开始。如果你使用相对路径将你的主 JavaScript 文件链接到 HTML 中,Parcel 也会为你处理,并将该引用替换为输出文件的URL。

    <html>
    <body><script src="./index.js"></script>
    </body>
    </html>
    console.log("hello world");
  3. Parcel 内置了一个开发服务器,这会在你更改文件时自动重建你的应用程序,并支持 模块热替换 ,以便你快速开发。你只需指定 入口文件 即可:

    parcel index.html

webpack与parcel比较

Webpack 打包时间 = parse string n + transform n + parse to AST + compress

Parcel 打包时间 = parse to AST + transform * n + compress

Webpack 之所以有时感觉很慢,是因为代码转译全靠 loader 进行字符串处理。比如一个 index.js 有可能要经历 loaderA -> loaderB -> loaderC,这些 loader 完全不知道彼此之间的存在,都是接过来一个字符串自己处理,然后再交给下一个。如果最后再 uglify 一下还要先 parse 为 AST(抽象语法树) 再压缩,这一步也是比较耗时的。

因此,parcel 至少为我们提供了一个很好的思路:多步转译 + 压缩时,每一步都可以利用到已经解析过后的 AST,只要完成各自的 transform 即可。

使用parcel的优势

  1. 零配置,只需要将它指向应用程序入口点,就能正常工作
  2. 构建快速,具有文件系统缓存,可以保存每个文件的编译结果
  3. parcel的转换工作在AST上,每个文件只有一个解析,多个转换以及一个代码生成

原文链接:https://github.com/parcel-bun...

新一代打包神器parcel简介相关推荐

  1. webpack 保存文件后自动打包_继webpack后又一打包神器Parcel

    前言: 在继grunt.gulp实现自动化构建之后,webpack又引领前端打包潮流,众所周知的是,vue-cli的脚手架就是基于webpack进行项目打包的.而webpack还在上升的势头的时候,又 ...

  2. 新一代打包神器Walle(瓦力)使用小结

    Walle多渠道打包 介绍 Android 7.0 引入一项新的应用签名方案 APK Signature Scheme v2,它能提供更快的应用安装时间和更多针对未授权 APK 文件更改的保护.在默认 ...

  3. 荣耀青春30青春版能升鸿蒙,或是新一代拍照神器 荣耀30青春版今日发布

    7月1日晚,荣耀手机官方微博发博表示荣耀旗下新机荣耀30青春版将于在7月2日14:30举行的荣耀夏季5G新品发布会上正式发布,并表示荣耀30青春版拥有"强大硬核的拍照性能"可以&q ...

  4. 海兰一体计算机配置,新一代办公神器!海兰一体机G40 plus为何受职场人士追捧?...

    原标题:新一代办公神器!海兰一体机G40 plus为何受职场人士追捧? 对于现在的职场上的办公人士来说,高效率永远是工作中最重要的事情.那么想要更好的提高实际的工作效率,除了职员本身足够优秀外,高端的 ...

  5. FastBuilder 一款让人上瘾的新一代开发神器

    这是一款让人上瘾的新一代开发神器,彻底告别Controller.Service.Dao等传统开发方式. FastBuilder 将不再区别"前端"与"后端"的概 ...

  6. 美团新一代渠道包打包神器walle

    背景: Android 7.0 中新增了 APK Signature Scheme v2 签名方式 如果Android Studio升级到 v2.2+,构建APK时默认使用的签名方式就是APK Sig ...

  7. Android 新一代多渠道打包神器

    作者 :李涛 ApkChannelPackage是一种高速多渠道打包工具.同一时候支持基于V1签名和V2签名进行多渠道打包.插件本身会自己主动检測Apk使用的签名方法,并选择合适的多渠道打包方式.对使 ...

  8. 新一代 Linux 文件系统 btrfs 简介

    btrfs 的特性和使用 Btrfs 被称为是下一代 Linux 文件系统.近年来 ext2/3 遇到越来越多的扩展性问题,在期待 ext4 的同时,人们发现了 btrfs,据说它采用了很多先进的文件 ...

  9. 原创全新打包工具Parcel零配置VueJS开发脚手架

    parcel-vue 一个基于Parcel打包工具的 VueJS急速开发脚手架解决方案,强烈建议使用node8.0以上 项目地址: https://github.com/w3c-king/p... 初 ...

  10. prometheus job 重复_分享一款开源的监控神器--Prometheus 简介、架构及相关概念

    概述 老环境用的zabbix做监控,新环境因为用的微服务架构,所以对比再三,选择了prometheus来做监控,下面介绍下什么是prometheus. 一.简介 Prometheus 是一套开源的系统 ...

最新文章

  1. JS循环执行函数setInterval
  2. CSS3黑色大气绘图着陆页模板
  3. (C/C++学习)15.C语言字符串和字符数组
  4. do sb suggest to_suggest sb to do还是doing
  5. 融合连接-玄武科技助力“智慧政务”新时代 —— 玄武科技 即信产品市场总监 朱敏...
  6. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明),签到题HIL
  7. layui编辑器上传图片
  8. 试验设计——正交试验设计
  9. windbg 查看结构体_windbg常见命令
  10. 《期权、期货及其他衍生产品》读书笔记(第三章:利用期货的对冲策略)
  11. Java经典代码工具类
  12. 视频剪辑的实用技巧快速分享
  13. 32位系统和64位系统的区别是什么
  14. JavaWeb-WEB核心7 会话技术 理解什么是会话跟踪技术掌握Cookie的使用掌握Session的使用(钝化、活化)完善用户登录注册案例的功能
  15. ImportError: packaging>=20.0 is required for a normal functioning of this mo
  16. JAVA编写的纯色背景图片去除底色变成透明背景图片的工具
  17. UsbAccessory和UsbDevice的区别
  18. 小学生都能读懂的区块链原理和术语介绍(故事图文)-引自《从零开始自己动手写区块链》
  19. 2022 届互联网大厂秋招时间
  20. PWN passcode [pwnable.kr]CTF writeup题解系列5

热门文章

  1. http://nianjian.xiaze.com/tags.php?/%E4%B8%AD%E5%9B%BD%E7%B2%89%E4%BD%93%E5%B7%A5%E4%B8%9A%E5%B9%B4%
  2. 设备综合效率OEE:基于数采的OEE优化分析
  3. 全球及中国婴儿奶瓶架行业发展趋势预测及投资前景展望报告2022-2028年
  4. 关于 戴尔G3 NVIDIA 1050TI 显卡驱动无法使用的解决办法
  5. php调用微信公众号支付接口,Thinkphp实现微信公众号支付接口
  6. 大学学嵌入式技术的优势
  7. 参心坐标系与地心坐标系
  8. 关于openpyxl读取excel中图片(shape)的注意点
  9. 解决Vmware虚拟机startx进入图形界面卡退、白屏、黑屏的问题
  10. RTMP推流摄像机联合EasyCVR安防视频云服务平台助力智能楼宇的建设