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

搬运自【http://blog.csdn.net/zhu_free/article/details/51476525】

gulp-express实现实时刷新

本来使用gulp-connect可以创建本地服务器,配合Livereload就可以实现实时刷新,但express项目自带了服务器,就不太好办了,之前用了gulp-express,实现了一部分,感觉很方便,但是只有jade模板变化会实时刷新,样式表和js文件则不会,之前的部分代如下:

gulp.task('server', ['styles', 'scripts'], function() {
  express.run(['./bin/www']); //启动

  gulp.watch('src/scss/**/*.scss', ['styles']); //监视样式表
  gulp.watch('src/js/**/*.js', ['scripts']); //监视js文件
  gulp.watch('views/**/*.jade', express.notify); //监视模板文件
  gulp.watch(['app.js', 'routes/**/*.js'], express.run);
});

gulp.task('default', ['server']);

  

找了一些资料提到一些gulp-livereloadconnect-livereload各种,还是没有想出来解决办法,最后忽然想到是不是gulp-express已经自带了,然后注意到express.notify这个函数貌似就是刷新的意思,于是尝试在stylesscripts方法里面结尾加上express.notify(),结果并没有什么卵用,然后试着在watch方法的callbacks列表后面加上notify:

gulp.watch('src/scss/**/*.scss', ['styles', express.notify]); //监视样式表
gulp.watch('src/js/**/*.js', ['scripts', express.notify]); //监视js文件

  

还是没有作用→_→ 
然后试着在模板文件的路径前面加上样式表和js文件的路径:

gulp.watch(['views/**/*.jade', 'src/js/**/*.js', 'src/scss/**/*.scss'], express.notify);

  

最后的解决办法是。。。代码加上了这两句

gulp.watch('public/**/*.css', express.notify);
gulp.watch('public/**/*.js', express.notify);

  

总结完整代码

gulp.task('server', ['styles', 'scripts'], function() {
  express.run(['./bin/www']); //启动

  gulp.watch('src/scss/**/*.scss', ['styles']); //监视样式表
  gulp.watch('src/js/**/*.js', ['scripts']); //监视js文件
  gulp.watch('views/**/*.jade', express.notify); //监视模板文件
  gulp.watch(['app.js', 'routes/**/*.js'], express.run);
  gulp.watch('public/**/*.css', express.notify);
  gulp.watch('public/**/*.js', express.notify);
});

gulp.task('default', ['server']);

  

转载于:https://www.cnblogs.com/webSong/p/7429217.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值