资讯专栏INFORMATION COLUMN

webpack2正式优化版,简化操作

0x584a / 558人阅读

摘要:启动新技术提供测试框架进行单元测试,代码覆盖率报告,可与和快速对接。关于的模块化,预处理器的编译。页面的其他资源文件,通过引入单元测试日后调整,待开发使用手册流程基本位于创建视图更多说明主动引入的默认地址为位于配置相关的和文件。

webpack2-Scaffolding

请各位看客老爷不要吝啬自己的Star,先来Github右上角Star一下呗。

Github右上角Star

Github右上角Star

重要的事情说三遍

项目地址

https://github.com/sayll/avalon-webpack-start

介绍

webpack2脚手架正式版,一个多资源统筹的脚手架。
本项目使用avalon2作为演示框架。
为兼容低版本浏览器,我也是强烈推荐一下它。市面上应该也算唯一能够支持到IE8以下的MVVM框架了吧。

关于【Webpack】

服务端使用Koa。需要注意的是,只有一个目的那就是提供了webpack-dev-middlewarewebpack-hot-middleware(代码热替换)。使用自定义的Koa程序替换webpack-dev-server,让它更容易实现universal 渲染和为了不使这个包过于庞大。

针对不同的loader采用了多线程编译,极大的加快了编译速度。

使用webpack.DllReferencePlugin打包框架和库。加快编译与打包速度。

启动新技术tree-shaking

提供测试框架进行单元测试,代码覆盖率报告,可与Travis-ci和Coveralls快速对接。【配置说明】

Babel被配置babel-plugin-transform-runtime可以让代码更优化。

关于【Css】

css的模块化,预处理器的编译。(支持sass,scss,less,postcss

针对低版本浏览器和其他浏览器内核的特殊性,启用autoprefixer自动添加浏览器前缀

针对移动开发,有独特的处理方案。(具体文档等待补充)

可导入字体和字体图标,操作非常简单。(如阿里系icon)【配置文档】

每次修改都会生成新的文件名,防止旧样式缓存带来的影响。(与JS间做了特殊处理,通过JS引入的CSS不会因JS改变而改变它的hash值)

针对开发模式启用修改自动刷新页面。(做了特殊处理,发布模式将得到优化)

关于【Js】

支持ES6的最新特性

模块化,可才用ES6的import,也可用AMD规范的require

每次修改都会生成新的文件名,防止旧脚本缓存带来的影响。(与CSS间做了特殊处理,通过JS引入的CSS不会因CSS改变而改变它的hash值)

快速编译,自动刷新。

将常用的框架和库进行多带带打包。(Dll)防止重复引用,导致打包文件臃肿。

提供公共脚本的文件入口,此文件将被所有页面自动引用。(可设置全局变量,引入公共的库。如Jquery)

关于【Html】

支持单页应用和多页应用的混合开发。

自动引入页面的CSS和JS文件。无需手动设置URL。(所有文件hash的改变都会导致文件名改变,这里的资源引用全由内部自动完成)

如有使用常用的框架和库进行多带带打包。(Dll),将需要多带带引用dll的vendor.js;

开始 环境配置

安装node.js

安装git

依赖配置

确认好你的环境配置,然后就可以开始以下步骤。

$ git clone https://github.com/sayll/avalon-webpack-start.git
$ cd avalon-webpack-start
$ npm install                   # Install project dependencies
$ npm start                     # Compile and launch

如果一切顺利,就能正常打开端口:http://localhost:1000/

开发过程中,你用得最多的会是npm start,但是这里还有很多其它的处理:

npm run

位于app/view配置html相关的JS和CSS文件。(JS和CSS需与HTML保持一致,可参考现有模版)【更多说明】

高级

引用字体图标Icon【更多说明】

使用框架(avalon)或库(jquery)【更多说明】

设置全局变量。虽引入公共库,但每次调用都需重新声明。所以就有了公共文件来提前声明。【更多说明】

使用Css预处理器(更多说明)

使用CDN(更多说明)

修改目录结构(更多说明)

最后

打包文件为build文件夹,请以此为根目录。

更新日志

更新详情

最重要的事情

项目地址: https://github.com/sayll/avalon-webpack-start

亲不要吝啬自己的Star,到Github右上角Star一下呗。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/81391.html

相关文章

  • webpack2正式

    摘要:正式版正式版,简单方便的构建单页和多页用用。下一步是完善单元测试,代码覆盖率报告如果大家有更好的想法及建议请提。开启测试并生成覆盖率报告。页面的其他资源文件,通过引入单元测试日后调整,待开发样式使用可添加替换预处理。 webpack2正式版 webpack2正式版,简单方便的构建单页和多页用用。(启用tree-shaking新技术)地址:avalon-webpack-start 这个启...

    WilsonLiu95 评论0 收藏0
  • 基于 Webpack2、Vue2、iView2 的可视化脚手架 iView Cli 发布 2.0

    摘要:多语言使用了的版本,并整合了的多语言和使用者自己的多语言配置,而且会根据用户系统的语言自动切换为中文和英文。 谷歌今天发布了一系列性感的软件,我们也发布了一款大家期待已久的开发者工具,同样很性感 :) iView 2.0 已经发布有两个月了,在 2.0 发布后,npm 下载量、issues 数量都提升了很多(可以 watch 下项目,感受感受邮件量)。两个月里,我们平均 1 周发布一个...

    MycLambert 评论0 收藏0
  • webpack v2升级踩坑笔记

    摘要:从再到目前当红明星,前端模块打包技术日新月异,在今年月份和月份左右接连更新了和版本为了减少冗余模块,缩减文件大小,中也加入了关于的特征,可以查看知乎如何评价新引入的代码优化技术的讨论。 从Grunt->gulp->webpack,再到目前当红明星rollup,前端模块打包技术日新月异,webpack在今年1月份和6月份左右接连更新了v2和v3版本,为了减少冗余模块,缩减bundle文件...

    JayChen 评论0 收藏0
  • Webpack2 升级指南和特性摘要

    摘要:名称后自动自动补全的功能将被移除在配置时,官方不再允许省略扩展名,的配置写法上将逐步趋于严谨。使用自定义参数作为配置项传入方式将做调整如果你随意将自定义参数通过传入到配置项中,如你会发现这将不会被允许,的执行将会遵循更为严格的标准。 历时多日,webpack2.2正式版终于赶在年前发布了,此次更新相对于1.X版本有了诸多的升级优化改进,笔者也在第一时间查阅了官方的文档,整理和翻译了由w...

    Forelax 评论0 收藏0
  • 无痛学会各种 2 的 Vue2+Vuex2+Webpack2 前后端同构渲染

    摘要:它会检测出最大静态子树就是不需要动态性的子树并且从渲染函数中萃取出来。这样在每次重渲染的时候,它就会直接重用完全相同的同时跳过比对。需要注意的是,中的操作必须是同步的,不可以存在异步操作的情况。 新增:哈哈,最近又推出了 vue 的文章,在这里放个链接~手把手教你从零写一个简单的 VUE 感谢有人看我扯技术,这篇文章主要介绍最近非常火的vue2前端框架的特点和vue2+vuex2+we...

    fish 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<