这篇文章总字数:1214,普通阅读4分钟,速读2分钟,主要讲的是新的打包工具parcel的一些新特性,谢谢,有兴趣朋友能够关注一下个人 github上面有30多篇文章,喜欢的能够watch或者star。你的支持是我输出的动力。
今天很高兴来说一下新的打包工具parcel,一个快速的,零配置的打包工具。能够点击这里看他的github.css
为了解决现有webpack等打包工具存在的问题:性能和配置复杂度。我开始研究parcel。html
以webpack举例,我认为打包工具是用来减轻前端负担的,可是在webpack上我并无感受到,除了须要学习webpack外,配置的时候仍是要查询中文文档,由于太多的插件根本不适合记忆,还有性能方面,当页面足够多时,打包的速度开始变得很慢,我记得咱们公司一个运营中心的项目,打包时间惨目忍睹。
首先我想说的就是性能,我上面已经说了,当一个项目有好多个页面的时候,你的打包速度真的是慢,webpack也是同样,一个项目要打包上线,这里花的时间,均可以早点下班了,开发过程当中也是同样,不过本地的话,你还能够给打包单一几个页面。前端
不少打包工具都注重于能快速的从新构建,这是伟大的,可是,初次构建的性能对于开发和生产来讲是很重要的node
parcel解决了这个问题,在编译过程当中,并行的编译代码,并使用现代的多核处理器解决这个问题。上述缘由影响了初步构建的速度。他也有文件缓存系统,以便于快速的重建。webpack
第二个缘由就是帮助咱们减轻配置的负担,大多数打包工具是围绕着配置文件创建起来的,配置文件有不少的插件。一个webpack的打包工程500行代码,已经不是什么稀罕的事情了。git
这种配置不只繁琐耗时,并且你不能保证你必定是正确的,还得参照规范改,这可能致使优化应用程序而影响正常的生产github
parcel被设计为零配置:只须要应用程序入口给它,他就能够正确的打包。Parcel支持JS,CSS,HTML,图像,文件资产等等 - 不须要任何插件。web
parcel的零配置体验还体如今不局限于文件格式,当parcel检测到一个.babelrc, .postcssrc
等文件,就会自动转化相应模块,好比Babel, PostCSS和PostHTML。这甚至适用于仅用于该模块的node_modules中的第三方代码,由于应用的使用者,不须要知道构建的时候每个模块是如何导入的。而且此次构建也没有必要让Babel在每个文件上的运行缓存
最后,parcel也很好的支持一些先进的打包功能,像代码拆分,热更新等。在生产模式中,还支持自动压缩,将来也可能加入像tree-shaking等优化babel
开启新项目的好处就是,parcel可使用现代的体系结构,没有历史包袱,而且在这个体系结构上扩展,更加灵活,并支持代码拆分和热更新等功能。
如今主流的打包工具仍是主要关注JavaScript,好比webpack,其余类型的文件也要经过loader将其变成JavaScript来进行打包。
但在parcel中,任何类型的文件都有机会成为一等公民,很容易能够添加一种新类型输入文件,并将相似类型的文件组合到输出文件中
你能够在这个网站上了解更多关于parcel如何工做的
parcel才刚刚开始就收到大众追捧,尝试一下吧