搬运自【简书:http://www.jianshu.com/p/2f923c8782c8】亲测可用哦!

最近在使用express框架及mongodb,由于前端和后端代码修改后都需要实现自动刷新功能,刚开始我后端使用的是nodemon进行代码修改后自动刷新,后来涉及到前端,自然而然我想到使用browser-sync进行刷新,按照官网给出的代理模式进行操作,虽然能够进行代理,但是还是不能后实时刷新前端代码,后来搜索找到这篇文章 gulp+browserSync+nodemon 实现express 全端自动刷新的实践 按照作者提供的方法,采用gulp、browser-sync及gulp-nodemon成功实现前后端自动刷新。
这里记录下步骤:

1、首先 肯定安装gulp npm install --save-dev gulp
(如果之前没有初始化,则需要npm init)

2、接下来安装后端代码自动刷新插件gulp-nodemon npm install --save-dev gulp-nodemon

3、然后安装browser-sync npm install --save-dev browser-sync

4、在项目根目录中新建gulpfile.js 文件,文件中的代码如下:

// 添加引用
var gulp=require('gulp');
var browserSync = require('browser-sync');
var reload = browserSync.reload;
var nodemon = require('gulp-nodemon'); //这个可以让express启动
gulp.task("node", function() {
nodemon({
script: './bin/www',
ext: 'js html',
env: {
'NODE_ENV': 'development'
}
})
}); gulp.task('server', ["node"], function() {
var files = [
'views/**/*.html',
'views/**/*.ejs',
'views/**/*.jade',
'public/**/*.*'
]; //gulp.run(["node"]);
browserSync.init(files, {
proxy: 'http://localhost:3000',
browser: 'chrome',
notify: false,
port: 4001 //这个是browserSync对http://localhost:3000实现的代理端口
}); gulp.watch(files).on("change", reload);
});

  

上面代码中的代理端口 proxy: 'http://localhost:3000', 记得要和express项目里 bin/www 文件的配置中的var port = normalizePort(process.env.PORT || '3000'); 要一致!(这里都是3000端口)
5、在命令行输入 gulp server 启动代理端口(也就是4001),这样就可以实现了前后端自动刷新功能了~

作者:该帐号已被查封
链接:http://www.jianshu.com/p/2f923c8782c8
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

nodejs里的express自动刷新高级篇【转载】的更多相关文章

  1. nodejs里的express自动刷新gulp-express使用【转载】

    搬运自[http://blog.csdn.net/zhu_free/article/details/51476525] gulp-express实现实时刷新 本来使用gulp-connect可以创建本 ...

  2. 如何设置页面自动刷新第一篇?? servlet setHeader("refresh","2")

    import java.io.IOException; import java.util.Random; import javax.servlet.ServletException; import j ...

  3. 浏览器自动刷新——基于Nodejs的Gulp LiveReload与VisualStudio完美结合。

    本文版权桂博客园和作者吴双共同所有,转载和爬虫请注明原文地址 http://www.cnblogs.com/tdws/p/6016055.html 写在前面 大家好我是博客园的蜗牛,博客园的蜗牛就是我 ...

  4. gulp+browserSync+nodemon 实现express 全端自动刷新的实践

    学习过程宝宝心里苦,不能怨政府.. 兴趣所致,一直放不下nodejs的学习,时隔多日,又把express捡起来打算重新再学学,一直没什么太大的长进,和实际的项目经验.真的醉了,太懒了. 今天在重新研究 ...

  5. gruntJs篇之connect+watch自动刷新

    grunt很强大,可以帮我我们解决很多繁琐的操作,虽然刚接触不久,但依然感受到其强大之处,这篇记录一下通过grunt.js实现事实刷新页面, 省去了编码 -> 保存 -> F5..F5.. ...

  6. express+gulp+gulp-nodemon+browser-sync自动刷新

    express自动生成项目.不在赘述 1.在项目根目录下新建终端,依次运行如下命令 npm install gulp --save-dev npm install gulp-nodemon --sav ...

  7. Browsersync结合gulp和nodemon实现express全栈自动刷新

    Browsersync能让浏览器实时.快速响应你的文件更改(html.js.css.sass.less等)并自动刷新页面.更重要的是 Browsersync可以同时在PC.平板.手机等设备下进项调试. ...

  8. Vue2和Vue3技术整理3 - 高级篇

    3.高级篇 前言 基础篇链接:https://www.cnblogs.com/xiegongzi/p/15782921.html 组件化开发篇链接:https://www.cnblogs.com/xi ...

  9. Vue2技术整理3 - 高级篇 - 更新完毕

    3.高级篇 前言 基础篇链接:https://www.cnblogs.com/xiegongzi/p/15782921.html 组件化开发篇链接:https://www.cnblogs.com/xi ...

随机推荐

  1. 跨平台sdk接入总结

    sdk说明: 1.Bugly SDK:自动捕获上报App的脚本错误和原生代码引发的崩溃信息,并提供异常问题分类分析. 2.语音 SDK:提供游戏内收发语音功能. 接入步骤: step1:仔细通读一遍s ...

  2. mybatis <where>、<set>、<trim>、<sql>、<foreach>标签的使用

    转:http://www.cnblogs.com/lixiujie/p/5766669.html <resultMap>标签的使用:这个类似于hibernte用于映射我们创建的vo对象与数 ...

  3. 搭建JavaWeb应用开发环境

    下载和安装Tomcat服务器 下载Tomcat安装程序包:http://tomcat.apache.org/,下载一个zip版本,解压到本地即完成了Tomcat的安装. 测试是否安装成功:进入Tomc ...

  4. rm删除破折号 - 开头的文件

    解决这个问题的一个方法就是在要删除的文件的前边加上"./" # rm ./-slow_query_130103.txt.gz To remove a file whose name ...

  5. linux sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory

    在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory.这是不同系统编码格式引起的:在windows系统中编辑的. ...

  6. 使用Apache Curator监控Zookeeper的Node和Path的状态

    1.Zookeeper经常被我们用来做配置管理,配置的管理在分布式应用环境中很常见,例如同一个应用系统需要多台 PC Server 运行,但是它们运行的应用系统的某些配置项是相同的,如果要修改这些相同 ...

  7. JAVA JDBC(存储过程和事务管理)

    1.什么是存储过程 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程 ...

  8. 【poj2104-求区间第k大数(不修改)】主席树/可持续化线段树

    第一道主席树~然而是道比较水的...因为它不用修改... 转载一个让我看懂的主席树的讲解吧:http://blog.csdn.net/regina8023/article/details/419106 ...

  9. div圆角

    div{    -moz-border-radius: 10px;    -webkit-border-radius: 10px;    border-radius: 10px;}

  10. vue_使用npm搭建vue2.0脚手架开发环境

    前言: 在使用vue进行开发时需要搭建vue的运行环境,这里主要是使用淘宝镜像cnpm进行搭建vue的脚手架开发环境.主要是分为mac和window两个版本,两个环境的搭建都是大同小异. mac开发环 ...