2016-11-13 6 views
0

js 파일 (function.js)이 수정 될 때마다 gulp를 사용하여 사용자 정의 browserify 명령을 실행하고 싶습니다.gulp 파일을 수정하여 사용자 정의 browserify 명령을 실행하십시오.

실행하려는 browserify 명령은 다음과 같습니다.

$ browserify function.js --standalone function > bundle.js 

이 gulpfile.js를 샘플로 사용하고 있습니다.

https://github.com/gulpjs/gulp/blob/master/docs/recipes/fast-browserify-builds-with-watchify.md

어떻게 사용자 정의 browserify 명령을 실행하려면이 gulpfile을 수정하는 방법은 무엇입니까?

'use strict'; 

var watchify = require('watchify'); 
var browserify = require('browserify'); 
var gulp = require('gulp'); 
var source = require('vinyl-source-stream'); 
var buffer = require('vinyl-buffer'); 
var gutil = require('gulp-util'); 
var sourcemaps = require('gulp-sourcemaps'); 
var assign = require('lodash.assign'); 

// add custom browserify options here 
var customOpts = { 
    entries: ['./src/index.js'], 
    debug: true 
}; 
var opts = assign({}, watchify.args, customOpts); 
var b = watchify(browserify(opts)); 

// add transformations here 
// i.e. b.transform(coffeeify); 

gulp.task('js', bundle); // so you can run `gulp js` to build the file 
b.on('update', bundle); // on any dep update, runs the bundler 
b.on('log', gutil.log); // output build logs to terminal 

function bundle() { 
    return b.bundle() 
    // log errors if they happen 
    .on('error', gutil.log.bind(gutil, 'Browserify Error')) 
    .pipe(source('bundle.js')) 
    // optional, remove if you don't need to buffer file contents 
    .pipe(buffer()) 
    // optional, remove if you dont want sourcemaps 
    .pipe(sourcemaps.init({loadMaps: true})) // loads map from browserify file 
     // Add transformation tasks to the pipeline here. 
    .pipe(sourcemaps.write('./')) // writes .map file 
    .pipe(gulp.dest('./dist')); 
} 

webstorm에서 node.js v6.9를 사용하고 있습니다.

+1

수정 방법은'customOpts'에서해야합니다. 정확히 어떻게해야할지 모르겠습니다. – user781486

답변

1

실행할 명령은 다음과 같습니다.

$ browserify function.js --standalone function > bundle.js 

이에 따라 수정 된 코드는 다음과 같습니다.

// add custom browserify options here 
var customOpts = { 
    entries: ['./function.js'], 
    standalone: 'function', 
}; 

는 단순히 --standalone 매개 변수 customOpts에 또 하나 개의 속성을 추가 할 수 있습니다. 나머지 코드는 동일하게 유지됩니다.