【gulp】gulp + browsersync 构建前端项目自动化工作流
什么是 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 构建前端项目自动化工作流的更多相关文章
- 使用gulp+browser-sync搭建前端项目自动化以及自动刷新
前段时间使用了gulp+browser-sync才发现这个东西真的很好用. 准备工作:(1).安装nodejs.gulp是基于nodejs使用的,所以先安装nodejs,https://nodejs. ...
- 用gulp替代fekit构建前端项目
https://segmentfault.com/a/1190000003060016 离开qunar有一个多月了,在离开的时候就决定不再用fekit.做出这个决定并不是因为fekit不好,恰恰相反, ...
- 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍
前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...
- 前端项目自动化构建工具——Webpack入门教程
参考资料:https://www.webpackjs.com/(中文文档) https://www.webpackjs.com/(官方文档) 首先有必要说明一下,本文侧重讲解webpack基本配置 ...
- vue 构建前端项目并关联github
这几天尝试用node开发一个网站,后端的接口已经初步开发完成,现在开始构建前端的项目,记录下过程,在学习下吧. 用vue-cli 构建项目,myproject.(构架过程略过) 每次在本地构建项目后和 ...
- jenkins自动构建前端项目(window,vue)
我们把一个多人协作的vue前端项目发布服务器,一般要经过以下步骤: git更新最新的代码 构建项目 把构建后的代码上传到服务器 如果用jenkins来构建的话,只需要点击一次构建按钮,就可以自动完成以 ...
- 如何使用Docker构建前端项目
原文链接 Docker单独部署前端项目和Node项目是非常便捷的,在这里分享一下Docker的使用,主要聊聊它的部署实践.(我是window10专业版安装Docker) Docker Docker是一 ...
- Webpack构建前端项目
前言 公司据说要搞前后端分离,趁这两天项目完成的差不多,抓紧时间学习一下前端知识 现在流行前端项目工程化,那么第一个问题就是如何创建工程(项目),第一次玩webpack 通过 NPM 创建项目 # 创 ...
- gulp安装搭建前端项目自动化
下面是今天在配置gulp运行项目时遇到的问题几个问题及其完整的安装过程: 1.安装node.js .gulp是基于nodejs使用的 查看版本node -v 2.npm install gulp ...
随机推荐
- JavaScript基础笔记(五) 函数表达式
函数表达式 一.闭包 概念:闭包是指有权访问另一个函数作用域中变量的函数. function createCompareFun(propertyName) { return function (obj ...
- 潭州课堂25班:Ph201805201 django 项目 第二十五课 文章多级评论前后台实现 (课堂笔记)
添加新闻评论功能 1.分析 业务处理流程: 判断前端传的新闻id是否为空,是否为整数.是否不存在 判断评论的内容是否为空 判断是否有父评论,父评论的id是否与新闻id匹配 判断用户是否登录 保存新闻评 ...
- BZOJ2240 : ural1676 Mortal Combat
首先如果最大匹配不足$n$个那么显然每条边都不可能在匹配为$n$的方案中. 对于一条边$(u,v)$,如果它可能在最大匹配中,有两种情况: $1.(u,v)$是当前方案的匹配边. $2.$可以沿着$( ...
- [P1879][USACO06NOV]玉米田Corn Fields (状态压缩)
最近题目都有状态压缩,我是蒟蒻,并不会状态压缩 然后我决定学了! 然后发现我学不来. OI-WIKI上的界面给我推荐了这道题https://oi-wiki.org/dp/state/ 状态压缩入门题, ...
- phpExcel导入大数据量情况下内存溢出解决方案
PHPExcel版本:1.7.6+ 在不进行特殊设置的情况下,phpExcel将读取的单元格信息保存在内存中,我们可以通过 PHPExcel_Settings::setCacheStorageMeth ...
- PAT基础6-1
6-1 简单输出整数 (10 分) 本题要求实现一个函数,对给定的正整数N,打印从1到N的全部正整数. 函数接口定义: void PrintN ( int N ); 其中N是用户传入的参数.该函数必须 ...
- 【二分图带权匹配】Anagram @山东省第九届省赛 A
题目描述 Orz has two strings of the same length: A and B. Now she wants to transform A into an anagram o ...
- flask之分页插件的使用、添加后保留原url搜索条件、单例模式
本篇导航: flask实现分页 添加后保留原url搜索条件 单例模式 一.flask实现分页 1.django项目中写过的分页组件 from urllib.parse import urlencode ...
- 28、初识socket(subprocess模块)
经过近一个半月的学习我们已经度过了python基础的阶段,今天我们开始学习python网络编程,没有难以理解的逻辑,更注重的是记忆. 本篇导航: 客户端/服务器架构 scoket与网络协议 套接字 基 ...
- Idea checkstyle插件的使用
File->Setting 选择Plugins,查询是否已经安装了checkstyle,如果没有安装,可以点击下面的“Browse repositories...”按钮 查询到checkstyl ...