使用browserify gulp:找不到模块src / js / main.js

时间:2014-12-03 17:13:02

标签: javascript node.js gulp browserify

我尝试使用Gulp和browserify来设置基本版本,但在尝试运行默认任务时仍然看到此错误:

Error: Cannot find module 'src/js/main.js' from '/Users/ben/dev/git/myapp/'

gulpfile.js

var gulp = require('gulp');
var browserify = require('browserify');
var del = require('del');
var source = require('vinyl-source-stream');


var paths = {
    main_js: ['src/js/main.js'],
    js: ['src/js/*.js']
};

gulp.task('clean', function(done) {
    del(['build'], done);
});

gulp.task('js', ['clean'], function() {
    browserify(paths.main_js)
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(gulp.dest('./build/'));
});

gulp.task('watch', function() {
    gulp.watch(paths.js, ['js']);
});

gulp.task('default', ['watch', 'js']);

main.js

console.log("Hello!")

的myapp /

.
├── gulpfile.js
├── node_modules
│   ├── browserify
│   ├── del
│   ├── gulp
│   └── vinyl-source-stream
├── npm-debug.log
├── package.json
└── src
    ├── css
    ├── index.html
    └── js
        └── main.js

我无法理解为什么它找不到main.js.当我从myapp/运行此命令时,它可以正常工作:

$ browserify src/js/main.js > build/bundle.js

1 个答案:

答案 0 :(得分:26)

尝试使用“./src/js/main.js”代替“src / js / main.js”,即:

var paths = {
    main_js: ['./src/js/main.js'],
    js: ['src/js/*.js']
};