2016-12-24 5 views
3

私はserver.jsと同じディレクトリにというファイルを持っています。私はそのようにそれを実行しようとしたが、それはうまくいきませんでしたgrup内から高速サーバを起動

gulp.task('default' , [ 'build','watch','connect'] , function(){ 
    gulp.run('express'); 
}); 

var express = require('./server.js') 

私はdefaultタスクでそれを実行したい:gulpfile.jsで は、私は私のserver.jsファイルが必要です。私はあなたがそのような方法でタスクを実行できると思います。どうすればdefaultタスクで実行できますか?

var express = require('express'); 
var app = express(); 

app.get('/api/test', function(req,res){ 
    res.send('Hello world!') 
}); 

app.listen(3000, function(){ 
    console.log('Example app listening on port 3000!'); 
}) 
+0

あなたはそれが、私はそのようなコードでがぶ飲みを実行するときにだけ、コマンドライン – Maxwelll

+0

から 'gulp'を実行することができますあなたのgulpfileにはありません。 –

答えて

1

gulp-live-serverパッケージは、(とりわけ)あなたことができ、独自のサーバスクリプトから急行サーバを起動するには:上記のコードを使用して

var gulp = require('gulp'); 
var gls = require('gulp-live-server'); 

gulp.task('default', [ 'build','watch','connect'], function() { 
    var server = gls.new('./server.js'); 
    return server.start(); 
}); 

server.jsファイルには、このコードが含まれていますコマンドラインでgulpを実行してサーバーを起動できます。サーバーは、Ctrl + Cの端末に接続するまで実行されます。

+0

試してみませんでしたが、うまくいくようです。 'gulp.task( 'default'、['build'、 'watch'、 'connect ']、function(){ express; });' –

1

それに対する解決策は、ちょうど次に私のコードを交換することになります。

gulp.task('default' , [ 'build','watch','connect'] , function(){ 
    express; 
}); 
+0

これはお勧めできません。 '。/ server.js'ファイルをあなたのタスクの外側から' require() 'するので、' default'タスクを実行しなくてもサーバは**常に**起動します。たとえば、コマンドラインで 'gulp build'を実行すると、サーバーを起動することもできます。 –

+0

私は見る! 'gulp.task( 'default'、['build'、 'watch'、 'connect']、function(){ \t var express = require( './ server.js'); }); –

関連する問題