看了很多关于Gulp自动化的相关教程,很感谢大神们的教程,

因为担心自己会忘记啥的,所以就把自己搭建gulp自动化的过程记录下来~~~

gulp是依赖于Nodejs的,所以最好是有点nodejs的基础,

搭建gulp分几步呢?如下:

1.安装Nodejs

  安装nodejs 我们可以直接去官网下载就好啦

  https://nodejs.org/en/

  我们选择第一个就好啦(我安装的是下面圈起来的这个版本)

  

  

安装好Node以后我们需要安装gulp

2.全局安装gulp

  cnpm install gulp -g

   

  

  这些安装好了以后,我们就准备开始为项目搭建gulp了

3.进入项目文件夹,下载gulp

  npm install gulp

  

  注意:在这里有一个问题,明明我们是在gulptest文件中下载的gulp 为什么node_modules文件夹会跑到外面去呢???

  -------那是因为我们没有初始化   没有生成package.json文件,所以我们应该生产package.json文件以后再下载gulp

  npm init

  

npm install --save-dev gulp

  

  这样我们就在项目文件夹中安装好gulp 接下来我们就开始写gulpfile.js

4. 建立gulpfile.js文件

  就像gruntjs需要一个Gruntfile.js文件一样,gulp也需要一个文件作为它的主文件,在gulp中这个文件叫做gulpfile.js。新建一个文件名为gulpfile.js的文件,然后放到你的项目目录中。之后要做的事情就是在gulpfile.js文件中定义我们的任务了。下面是一个最简单

  的gulpfile.js文件内容示例,它定义了一个默认的任务。

var gulp = require('gulp');
gulp.task('default',function(){
console.log('hello world');
});

  此时我们的目录结构是这样子的:

  ├── gulpfile.js
  ├── node_modules
  │ └── gulp
  └── package.json

  现在我们来运行一下gulp 看看返回的是什么

   

  在这里输出了 hello world

  说明这个简单的gulpfile文件是可行的

  但是呢? 我们平时做项目需要的是搭建一个自动化,所以单单这样是不行的,那我们就继续往下

5.利用connect来搭建创建一个web服务

//引入gulp包和gulp-connect包
var gulp=require('gulp');
var connect=require('gulp-connect'); gulp.task('webserver', function() {
connect.server();
});
gulp.task('default', ['webserver']);

  这里我们利用gulp-connect搭建了一个自动化,所以我们的node_modules必须含有gulp-connect的包,如果没有需要下载

  

  在gulp中require引入的包,如果没有则需要自己手动下载   npm install 包名称

  最后我们再gulp 就可以了

  

  然后我们打开浏览器localhost:8080,即可浏览html文件

  但是每次更改完以后还是要我们自己手动刷新,不过是相当于放到了一个环境中,能更贴切正式环境罢了,

  有时候我们的本地和正式环境有一点差距,需要我们自己去把控避免了

6.web服务自动刷新

  我们会发现上面搭建的自动化服务没有自动刷新,那应该怎么办呢?

//引入插件
var gulp = require('gulp');
var connect = require('gulp-connect'); //创建watch任务去检测html文件,其定义了当html改动之后,去调用一个Gulp的Task
gulp.task('watch', function () {
gulp.watch(['./**/*.html'], ['html']);
});
//使用connect启动一个Web服务器
gulp.task('connect',function(){
connect.server({
root:'',
port:8888,//更改端口名
livereload:true
})
})

gulp.task('html', function () {
gulp.src(['./*.html'],['./**/*.html'])
.pipe(connect.reload());
});
//运行Gulp时,默认的Task
gulp.task('default', ['connect', 'watch']); 打开git 输入gulp j即可启动服务

  然后我们来看一下目录结构

  

   

  我们打开localhost:8080然后输入你要查看的文件或者文件夹中的某个文件即可

  比如我要查看demo.html

  

  我们在编译器中更改某个文件,那么更改完毕一定要ctrl+s保存一下,这样就能看到浏览器中也跟着更改

构建前端gulp自动化的更多相关文章

  1. 前端gulp自动化构建配置

    为了节省http请求次数.节约带宽,加速页面渲染速度,达到更好用户体验的目的.现在普遍的做法是在上线之前做静态资源的打包构建,也就是静态资源的合并压缩: 这里使用的是gulp,当然现在有更强大的模块化 ...

  2. 【gulp】gulp + browsersync 构建前端项目自动化工作流

    什么是 gulp? gulp.js 是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务.gulp.js 是基于 node.js 构建的,利用 node.js 流的威力,你可以快速构 ...

  3. 前端自动化构建工具gulp的使用总结

    前端自动化构建工具gulp的使用总结 博主最近偶的空闲,在此对gulp的使用做一个总结,让小伙伴知道如何合理的使用gulp以及gulp的使用技巧. 谈到gulp,有人可能就会想到另外一个构建工具gru ...

  4. 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  5. Gulp构建前端自动化工作流之:常用插件介绍及使用

    在对Gulp有了一个初步的了解之后,我们开始构建一个较为完整的Gulp开发环境. 本文主要分为6个段落: 1. 构建项目目录结构(Directory Structure Build) 2. 插件介绍及 ...

  6. 前端自动化构建工具gulp记录

    一.安装 1)安装nodejs 通过nodejs的npm安装gulp,插件也可以通过npm安装.windows系统是个.msi工具,只要一直下一步即可,软件会自动在写入环境变量中,这样就能在cmd命令 ...

  7. Gulp构建前端自动化项目

    类似于Grunt,gulp是另一个同样功能很强大的前端项目自动化利器. 下面是项目的效果:

  8. 前端构建工具gulp使用

    前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gulp中文文档 https://g ...

  9. (转载)前端构建工具gulp使用

    前端构建工具gulp使用 前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gulp中 ...

随机推荐

  1. [转] vi/vim命令模式和编辑模式各种操作

    摘要:vi 编辑器是最常用的文档创建和编辑工具,初学者应该学会简单应用vi ,学会在vi 中做简单的修改.删除.插入.搜索及替换作业:如果您是新手,不妨看看本文,或许这篇文档能让您在最短的时间内学会v ...

  2. Linux 之父自传《just for fun》读书笔记

    一次偶然的机会,看到了阮一峰老师关于这本书的介绍,当时我就觉得这本书相当有趣. 在没有读这本书之前,我觉得 linus 作为发明 Linux 系统的人,应该是一个比较严肃的人,就像我的老师一样.但事实 ...

  3. [20190211]简单测试端口是否打开.txt

    [20190211]简单测试端口是否打开.txt --//昨天看一个链接,提到如果判断一个端口是否打开可以简单执行如下:--//参考链接:https://dba010.com/2019/02/04/c ...

  4. 3d max 动作Take 001改名

    问题描述 带动作的Fbx文件导入Unity之后,动作名字为Take 001,如下所示: 在max那边是没有办法改名的,只能在Unity中改名. 方法1 1. 选中动画文件,按Ctrl + D,复制一份 ...

  5. esxi网络中虚拟机的相关操作

    一个虚拟机的克隆就是原始虚拟机全部状态的一个备份或镜像.克隆的过程不影响原始虚拟机.而快照指的是虚拟磁盘在某一特定时间点的副本.执行快照将保留虚拟机的状况和数据. 一.实验拓扑图: 目标:克隆虚拟机, ...

  6. 力扣算法题—052N皇后问题2

    跟前面的N皇后问题没区别,还更简单 #include "000库函数.h" //使用回溯法 class Solution { public: int totalNQueens(in ...

  7. 2018-10-18读文献总结之DCB码分多址、零基线、信号产生

    ---恢复内容开始--- 今天心血来潮,想开始把自己读文献的过程和每篇文献的收获总结一下,不知道CSDN怎么回事,一直登陆不进去,搞得我注册了一个博客园的账户,博客园新注册的还需要认证,但是很快,所以 ...

  8. MySQL 初识别语句,数据库、表、行的增删改查

    一.MySQL 开场语句 1.登陆 mysql -u root -p ; #回车然后输入密码 2.退出 eixt | quit #二者选其一 3.查看数据文件路径(配置文件中学习的) show glo ...

  9. Spring Boot 中文乱码问题解决方案汇总

    使用 Spring Boot 开发,对外开发接口供调用,传入参数中有中文,出现中文乱码,查了好多资料,总结解决方法如下: 第一步,约定传参编码格式 不管是使用httpclient,还是okhttp,都 ...

  10. 开放标准-http://www.open-std.org/

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qianguozheng/article/details/37654877 http://www.op ...