array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 前端自动化构建工具【grunt、gulp、webpack】 - 爱码网

前端自动化构建工具【grunt、gulp、webpack】
1.它们的作用是什么?
以前的程序员,做项目的时候,需要大量的合并css,js文件,花费了大量的时间在合并压缩上面,在前端开发中会出现很多重复性、无意义的劳动。后来,为了希望这一切都可以自动完成,安装常用插件,合并插件、压缩插件等、就出现了这几种自动化构建工具。
2.简单介绍一下这三种工具?
Grunt是js任务管理工具(自动化构建工具)
优势:出来早,社区成熟 插件全
缺点:配置复杂 效率低(cpu占用率高)
Gulp是基于流的自动化构建工具
优点:配置简单 效率高 流式工作(一个任务的输出作为另外一个任务的输入)优点正好是grunt的缺点。
缺点:出现晚 插件少
Webpack 模块打包机
优点:模块化
缺点:配置复杂
3.安装node.js及npm
grunt、gulp、webpack这三种自动化构建工具都依赖node.js环境,所以我们需要先安装node。node.js不仅是服务器端js运行环境 还有 大工具包(npm),前端用npm构建前端的开发环境、为了实现自动化构建及项目管理。(安装教程移步度娘)。
前端自动化构建工具【grunt、gulp、webpack】
node.js的包分类:
1,全局包:全局环境下使用,可以在命令行任何目录下使用(-g)在所有项目都能用的情况下。
2,本地包:本地工程使用的包,某个项目需要用。
安装全局包cnpm
由于npm提供的包是在国外的服务器上,下载速度不能保证。所以实际使用中可以使用淘宝提供的,cnpm国内镜像(10分钟更新),下载速度快。在网络状况不好的时候用cnpm
安装步骤:
前端自动化构建工具【grunt、gulp、webpack】
.grunt
grunt构建具体步骤:
安装全局grunt命令CLI 在任何目录下都可以使用grunt命令只不过无法执行:
npm install -g grunt-cli
创建工程目录:
mkdir 目录名
切换到当前目录:
cd 目录名
初始化工程:
npm init
安装本地grunt安装包。目的:多个版本可以在电脑上共存。
npm install grunt --save-dev
创建Gruntfile.js文件,用来配置或定义(task)并加载Grunt插件。
下面单独说Gruntfile.js文件的配置
安装各种grunt插件 --参考官方
grunt-contrib-less less编译
grunt-contrib-cssmin css压缩
grunt-contrib-uglify js压缩
grunt-contrib-watch 监控
grunt-contrib-concat 合并
执行任务task
关于Gruntfile.js文件配置:(官网)
Gruntfile.js文件配置需要和文件目录相结合下面是个模板的文件tree:
前端自动化构建工具【grunt、gulp、webpack】
下面是Gruntfile.js文件配置模型:
前端自动化构建工具【grunt、gulp、webpack】
合并js文件配置(压缩两个字去掉):
前端自动化构建工具【grunt、gulp、webpack】
将合并好的js文件进行压缩:
前端自动化构建工具【grunt、gulp、webpack】
加入cssmin,less,watch,之后:
前端自动化构建工具【grunt、gulp、webpack】
.gulp
创建工程目录
mkdir 目录名
切换当前目录
Cd 目录名
初始化工程进行配置文件
npm init
安装gulp、注册全局gulp
npm install -g gulp
安装本地gulp
npm install gulp --save-dev
创建grunt配置文件gulpfile.js 粘过去
创建build和src原文件(css js less在js文件内创建min文件)
安装插件 自带watch

.webpack
全局安装webpack
npm install webpack -g
在项目中安装webpack
初始化package.json,根据提示填写package.json的相关信息
npm init
将webpack依赖添加到package.json
npm install webpack --save-dev
Develop Server 工具(可选)
npm install webpack-dev-server --save-dev

相关文章: