Browserify не работает должным образом в Gulp

Не знаю, пропустил ли я что-то или ошибся. Но требование модуля возвращает только пустой объект.

Это всего лишь пример моего проекта.

Инструменты, которые я использую:

gulp - 3.9.1
browserify - 13.0.0
vinyl-source-stream - 1.1.0

Вот мой рабочий каталог:

root/
  dist/
  src/
    external.js
    main.js
gulpfile.js

главный.js

var External = require('./external.js');
console.log(External);

внешний.js

function Hello() {
  return 'Hello from the otherside!';
}

module.exports = {
  testFunc: Hello
};

gulpfile.js

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

gulp.task('concat', function() {
  return browserify('./src/main.js')
    .bundle()
    .pipe(vinyl_source_stream('bundle.js'))
    .pipe(gulp.dest('./dist/'))
});

1 ответ

  1. Первый:

    module.exports = function() { 
      testFunc: Hello
    };
    

    чтобы можно было экспортировать прототип объекта.

    Второй

    var External = require('./external.js')(); // Notice the ()
    

    чтобы можно было выполнить этот прототип и получить экземпляр объекта.