Gulp自动构建Web前端程序
这两天一个朋友在项目上碰到了一个这样的问题,在运营过程中,用户在浏览器上对某个表单进行数据提交时,需要引入新的平台接口数据的业务,通过评估,开发团队马上修改了相关后台代码和部分的前端脚本代码,通过简单测试并很快上线。当是上线后客户端的功能没有发生任何变化和修改前表现的状况是一样。遇到这样的问题,开发团队一时有点迷糊,明明是修改了功能并进行了部署却没有让用户使用到该功能,不知道该如何下手了。
有过一定前端开发经验的朋友应该知道这是浏览器缓存Web资源导致的问题,针对这样的实际问题,项目上应该有自己的应对方法。类似这样的需求,也催生了很多优秀的解决方案和优秀的前端构建技术框架,比较Grunt和Gulp。
针对前端构建技术框架的技术,网上有许多朋友分享自己的宝贵经验和详尽的分享总结,比如 http://www.cnblogs.com/cnblogsfans/p/5093012.html 中系列的文章。
下面是我个人进行Gulp学习和应用的过程记录,包括环境搭建(win7操作系统)和初步使用。
1, 安装Node.js
2, 准备项目文件
创建如图所示文件夹,并在scripts文件中添加如下内容的两个脚本文件
3, 安装Gulp
在Cmd中定位到项目文件根目录,运行 “npm install --save-dev gulp”
4, 安装Gulp中可以合并脚本文件的gulp-concat插件
在Cmd项目根目录位置运行“npm install --save-dev gulp-concat”
5, 在项目根目录添加一个名字为gulpfile.js, 作用类同与Docker中makefile文件。
var gulp = require("gulp");
var concat = require("gulp-concat");
gulp.task('default', function(){
console.log('---------Begin building----------'); gulp.src('scripts/*.js')
.pipe(concat('allModule.js'))
.pipe(gulp.dest('builded'));
console.log('---------End building----------'); });
6, 构建结果
把文件moudle1.js 和 module2.js内容合成在一个文件中的构建结果。
Gulp上的插件有各类文件压缩、代码检查、Less和Sass编译等,可以满足常规前端软件开发、调试、构建、部署等功能需要。
总结
如果开发团队具备DevOps支撑自动化平台工具(如Docker、TFS、Jira、Jenkins等集成平台工具)和思维模式,可以把前端的自动构建有效集成在软件开发、测试、发布和运维过程中,进一步加强团队软件过程的自动化能力,提升团队效率、创新能力和生产力。
Gulp自动构建Web前端程序的更多相关文章
- spring mvc构建WEB应用程序入门例子
在使用spring mvc 构建web应用程序之前,需要了解spring mvc 的请求过程是怎样的,然后记录下如何搭建一个超简单的spring mvc例子. 1) spring mvc的请求经历 请 ...
- 2018年一名合格的web前端程序员应该会哪些技术
有朋友让小编说一说web前端在未来几年的发展趋向,对于这个问题,恕小编无能为力,web前端技术日新月异,更新非常快,谁也不能预料未来会发生些什么 小编也只能说在2018年,react native和j ...
- web前端程序员真的值这么多钱吗?
对于互联网公司来说用户就是上帝,做好客户体验一切才有可能.所以互联网公司都会把钱砸向前端,Web前端程序员也越来越受到企业争相聘用. 前端工程师工资也越来越高,目前Web前端工程师工作1~2年后通常会 ...
- 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用
关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用 工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...
- Node.js高级编程读书笔记 - 4 构建Web应用程序
Outline 5 构建Web应用程序 5.1 构建和使用HTTP中间件 5.2 用Express.js创建Web应用程序 5.3 使用Socket.IO创建通用的实时Web应用程序 5 构建Web应 ...
- 使用ASP.NET 构建 Web 应用程序快速入门-8小时的免费培训视频
- Scott Hanselman的中文博客[转载] [原文发表地址] Building Web Apps with ASP.NET Jump Start - 8 Hours of FREE Trai ...
- 新手避坑 -- 用 Jenkins +miniprogram-ci 自动构建微信小程序
先看看效果: 要实现这样的效果,需要下面3步: 1.下载 node 依赖包 miniprogram-ci,编写预览和上传功能 2. 登录微信公众平台, 下载项目的privateKey+添加代码上传IP ...
- 第7章 使用springMVC构建Web应用程序 7.1 springMVC配置
最近在看spring in action第3版,这里搭建一个简单的spring mvc,也算书没白看,当然老鸟可以不屑了,这里只是给自己做个笔记,配置也尽量删烦就简, Spring MVC的核心是Di ...
- ADF_Starting系列9_使用EJB/JPA/JSF通过ADF构建Web应用程序之测试J2EE Container
2013-05-01 Created By BaoXinjian
随机推荐
- Android动画之translate(位移动画)(转)
转自:http://www.cnblogs.com/bavariama/archive/2013/01/29/2881225.html 上一篇文章讲了 Android的左右滑动切换,实现过程是非常简单 ...
- graphical Layout调大一点
布局最右边的放大器按钮好难找啊
- Jmeter 新手
转载:http://www.cnblogs.com/TankXiao/p/4059378.html 什么是压力测试 顾名思义:压力测试,就是 被测试的系统,在一定的访问压力下,看程序运行是否稳定/服 ...
- dev repositoryItem 手工定义
一.打开设计界面 二.定义Repository 事件定义 三.把repositoryItemTextEdit1邦定存在的列
- 利用cocoapods创建基于git的私有库
上一篇文章记录了我利用cocoapods创建基于SVN的私有库的全部过程,今天我再记录一下基于git创建的过程. 整体先说明一下创建一个私有的podspec包括如下那么几个步骤: 创建并设置一个私有的 ...
- deviceOne -- js的本地搜索
// 搜索 function search_by_PY(pinyin) { // 置空 var after_search_listData = []; // 清空数据 do_listData.remo ...
- Android应用性能优化方案
1.避免创建不必要的对象 2.如果方法用不到成员变量,可以把方法声明为静态(static),这样性能会提高百分之十五到百分之二十 3.避免使用get/set存取字段,可以把字段声明为public直接访 ...
- ThinkPHP框架开发的应用的标准执行流程
用户URL请求 调用应用入口文件(通常是网站的index.php) 载入框架入口文件(ThinkPHP.php) 记录初始运行时间和内存开销 系统常量判断及定义 载入框架引导类(Think\Think ...
- 实例:基于ListActivity实现列表
如果程序的窗口仅仅需要显示一个列表,则可以直接让Activity继承ListActivity来实现,ListActivity的子类无须调用setContentView()方法来显示某个界面,而是可以直 ...
- java调用webservice
http://www.cnblogs.com/sun_moon_earth/archive/2009/02/03/1383308.html http://www.cnblogs.com/siqi/ar ...