什么是 gulp?

gulp.js 是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务。gulp.js 是基于 node.js 构建的,利用 node.js 流的威力,你可以快速构建项目并减少频繁的 IO 操作。gulp.js 源文件和你用来定义任务的 gulp 文件都是通过 javascript(或者 coffeescript )源码来实现的。更多关于 gulp,可以通过官网了解。

什么是 browsersync?

browsersync 能让浏览器实时、快速响应您的文件(html、js、css、sass、less等等)的更改,browsersync 支持多终端(PC、ipad、iphone、android等等)设备同时调试。无论您是前端还是后端工程师,使用它将提高您 30% 的工作效率。更多关于 browsersync,可以通过官网了解。

安装依赖包

npm install --save-dev gulp browser-sync

配置 gulpfile.js

'use strict';

var gulp = require('gulp'),
browserSync = require('browser-sync').create(); // 配置服务器
gulp.task('serve', function() {
browserSync.init({
server: {
baseDir: './'
},
port: 8000
});
}); gulp.task('default', ['serve']);

打开终端,输入:

gulp

如果显示如下,说明启动本地静态服务器成功了。

[::] Using gulpfile ~/Work/github/test-demo/gulpfile.js
[::] Starting 'serve'...
[::] Finished 'serve' after ms
[::] Starting 'default'...
[::] Finished 'default' after 9.42 μs
[BS] Access URLs:
-------------------------------------
Local: http://localhost:8000
External: http://172.16.18.11:8000
-------------------------------------
UI: http://localhost:3001
UI External: http://172.16.18.11:3001
-------------------------------------
[BS] Serving files from: ./

这时候打开浏览器,输入 http://localhost:8000/ 就可以看到页面了。

-----分割线-----

以上示例只是最简单的 demo,一般项目不单单只有 browsersync 还有其他的 gulp 插件需要引用(比如,gulp-sass),后面的文章会逐一介绍如何使用这些插件,并逐步完善 gulpfile.js。

PS:

如果端口号设置在 1024 以下的话,在 linux 下监听会报错,是因为 linux 监听 <= 1024 的端口需要 root 权限。解决方法一:端口号 > 1024。解决方法二:sudo gulp。

【gulp】gulp + browsersync 构建前端项目自动化工作流的更多相关文章

  1. 使用gulp+browser-sync搭建前端项目自动化以及自动刷新

    前段时间使用了gulp+browser-sync才发现这个东西真的很好用. 准备工作:(1).安装nodejs.gulp是基于nodejs使用的,所以先安装nodejs,https://nodejs. ...

  2. 用gulp替代fekit构建前端项目

    https://segmentfault.com/a/1190000003060016 离开qunar有一个多月了,在离开的时候就决定不再用fekit.做出这个决定并不是因为fekit不好,恰恰相反, ...

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

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

  4. 前端项目自动化构建工具——Webpack入门教程

    参考资料:https://www.webpackjs.com/(中文文档)   https://www.webpackjs.com/(官方文档) 首先有必要说明一下,本文侧重讲解webpack基本配置 ...

  5. vue 构建前端项目并关联github

    这几天尝试用node开发一个网站,后端的接口已经初步开发完成,现在开始构建前端的项目,记录下过程,在学习下吧. 用vue-cli 构建项目,myproject.(构架过程略过) 每次在本地构建项目后和 ...

  6. jenkins自动构建前端项目(window,vue)

    我们把一个多人协作的vue前端项目发布服务器,一般要经过以下步骤: git更新最新的代码 构建项目 把构建后的代码上传到服务器 如果用jenkins来构建的话,只需要点击一次构建按钮,就可以自动完成以 ...

  7. 如何使用Docker构建前端项目

    原文链接 Docker单独部署前端项目和Node项目是非常便捷的,在这里分享一下Docker的使用,主要聊聊它的部署实践.(我是window10专业版安装Docker) Docker Docker是一 ...

  8. Webpack构建前端项目

    前言 公司据说要搞前后端分离,趁这两天项目完成的差不多,抓紧时间学习一下前端知识 现在流行前端项目工程化,那么第一个问题就是如何创建工程(项目),第一次玩webpack 通过 NPM 创建项目 # 创 ...

  9. gulp安装搭建前端项目自动化

    下面是今天在配置gulp运行项目时遇到的问题几个问题及其完整的安装过程: 1.安装node.js .gulp是基于nodejs使用的 查看版本node   -v 2.npm install gulp ...

随机推荐

  1. MySql基础笔记(一)Mysql快速入门

    Mysql快速入门 一)基本概念 1)表 行被称为记录,是组织数据的单位.列被称为字段,每一列表示记录的一个属性. 2)主键 主键用于唯一的标识表中的每一条记录.可以定义表中的一列或者多列为主键, 但 ...

  2. php商品条件筛选功能你是怎么做出来的?

    php商品条件筛选功能你是怎么做出来的? php按条件筛选商品的功能,还是比较简单的.其实就是根据不同的条件组成SQL查询条件,从数据库里查出不同的商品出来.举个例子:用户可以按价格范围.按品牌.按商 ...

  3. 封装、property特性及绑定与非绑定方法

    1.封装 (1)什么是封装? 封:属性对外是隐藏的,但对内是开放的: 装:申请一个名称空间,往里面装入一系列名字/属性 (2)为什么要封装? 封装数据属性的目的 首先定义属性的目的就是为了给类外部的使 ...

  4. BZOJ2130 : 魔塔

    考虑从$0$到$n$枚举$A$的通关楼层. 设$f[i]$表示$B$通关$i$层时$C$最多能得到多少金币,因为金币数非负,所以也可以看作最多通关多少层. 当$A$的通关楼层往上多$1$的时候,这把钥 ...

  5. ironic-inspector硬件信息收集

    主机上报 ironic-inspector流程会在小系统里收集裸机的硬件信息,然后上报到ironic-conductor. 其中收集硬件信息主要使用hwinfo和lshw命令.Centos可以使用如下 ...

  6. C_狐狸和兔子的故事

    题目描述 围绕着山顶有10个洞,一只狐狸和一只兔子各住一个洞.狐狸总想吃掉兔子.一天兔子对狐狸说:“你想吃我有一个条件,先把洞从1-10编上号,你从10号洞出发,先到1号洞找我:第二次隔1个洞找我,第 ...

  7. Ubunut操作系统下nDPI的部署及简单使用

    [系统:Ubuntu16.04LTS ] [ nDPI版本:2.5.0] [ 内核:4.15.0-39-generic] 前期准备工作--依赖安装 所需依赖包(前两个ubuntu16已有不需安装) g ...

  8. [转]mysql使用关键字作为列名的处理方式

    转自:https://blog.csdn.net/xpnidaye/article/details/52388669 下面是一个创建表的语句,而其中key是一个关键字,所以不能直接写key. crea ...

  9. C#隐藏手机号中间四位为*

    使用正则:Regex.Replace(手机号, "(\\d{3})\\d{4}(\\d{4})", "$1****$2"); 效果:

  10. java 使用CXF将wsdl文件生成客户端代码命令java调用第三方的webservice应用实例

    1.先下载cxf包https://download.csdn.net/download/suizhikuo/108112362.解压缩包,通过cmd命令进入到bin目录下(cd cxf\bin的路径) ...