

タイトル通りなのですが、gulpを利用してbrowserifyのトランスパイルをファイル監視による自動実行させようとしています。

gulpfile.jsは以下のように設定しました。

[code]

    var gulp = require('gulp');
    var browserify = require('browserify');
    var source = require('vinyl-source-stream');
    
    gulp.task('browserify', function(){
      browserify({entries: ['src/app.js']})
      .bundle()
      .pipe(source('bundle.js'))
      .pipe(gulp.dest('./js'))
    });
    
    gulp.task('default', function() {
      gulp.watch('src/app.js', ['browserify']);
    });
    
[/code]

コマンドラインで`gulp
browserify`を実行したところ、無事コードがトランスパイルされたのですが、watchを利用したファイル監視による自動実行をさせると、対象のファイルの更新した瞬間以下のエラーが発生します。

[code]

    Cannot find module '~/testproj/src/app.js' from '~/testproj'
    
[/code]

Cannot find
moduleということで、app.jsが見つからないということなのですが、実際`~/testproj/src`ディレクトリの中にapp.jsは存在しますので、何がいけないのかさっぱりわかりません。

何かお気付きの点がございましたらご指摘お願いいたします。


CC BY-SA 3.0
2016-04-29T06:54:19.410
24441
2016-08-03T05:40:23.043
2016-04-29T09:34:08.687
5840
5840
question
node.js gulp browserify
gulpのwatchでbrowserifyの自動トランスパイルを実行するとCannot find module '~/testproj/src/app.js' from '~/testproj'エラーが発生する


直接的な原因は分かりませんが、browserifyのwatchはwatchifyを使うのが一般的です。

<https://github.com/substack/watchify>


CC BY-SA 3.0
2016-08-03T05:40:23.043
28039
2016-08-03T05:40:23.043
17373
24441
answer