node.js - 求一份gulpfile.js文件

查看:133
本文介绍了node.js - 求一份gulpfile.js文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

懒得刷新浏览器,就折腾了下gulp

我用的是express初始化的web项目

用 gulp-live-server 只能实现修改views/, public/ 下的文件可以生效 (静态文件)
routes下的文件修改,都不生效,文件如下:

var gulp = require('gulp');

gulp.task('default', function() {

  var gls = require('gulp-live-server');
  //1. run your script as a server
  var server = gls.new('bin/www');
  server.start();

  //use gulp.watch to trigger server actions(notify, start or stop)
  gulp.watch(['public/**/*.*', 'views/**/*.html'], function(file) {
    server.notify.apply(server, [file]);
  });

  gulp.watch(['routes/**/*.js'], function(file) {
    server.start.bind(server, [file]); //restart my server
  });
});

在这求大神赏一篇只针对express初始化的项目的gulpfile.js文件
在此谢过!

解决方案

楼主要的效果是 不仅仅静态文件修改了浏览器自动刷新,而且还要服务端js修改了也能够自动刷新是吗

试试下面的gulp配置

'use strict';

var gulp = require('gulp');
var browserSync = require('browser-sync');
var nodemon = require('gulp-nodemon');


gulp.task('default', ['browser-sync'], function () {
});

gulp.task('browser-sync', ['nodemon'], function() {
    browserSync.init(null, {
        proxy: "http://localhost:5000", // 这里要换成你在express中开的服务端口 一般是3000
        files: ["public/**/*.*"],
        browser: "google chrome",
        port: 7000,
    });
});
gulp.task('nodemon', function (cb) {
    
    var started = false;
    
    return nodemon({
        script: 'app.js'
    }).on('start', function () {
        // to avoid nodemon being started multiple times
        // thanks @matthisk
        if (!started) {
            cb();
            started = true; 
        } 
    });
});

这篇关于node.js - 求一份gulpfile.js文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆