2015-10-13 9 views
7

मेरे पास एक रिएक्ट घटक है जिसे मैं एक बंडल फ़ाइल में निर्यात कर रहा हूं। मैं इसे बेबेलिफ़ाई का उपयोग करके सफलतापूर्वक बदल रहा हूं, हालांकि, अब मैं इसे सक्रिय करना चाहता हूं। मुझे यह पता लगाना प्रतीत नहीं होता कि ब्राउजरिफ़ का उपयोग करके एकाधिक ट्रांसफॉर्म कैसे चलाएं। मुझे लगता है कि यह संभव होना चाहिए, लेकिन मैं यह नहीं बता सकता कि मेरा वाक्यविन्यास थोड़ा बंद है या अगर मुझे कस्टम ट्रांसफॉर्म लिखना है या मुझे अपने पैकेज.जेसन में ट्रांसफॉर्म निर्दिष्ट करना चाहिए। यहां मेरी गल्प फ़ाइल में कोड है:गल्प/ब्राउजरिफाइंड बंडल पर कई ट्रांसफॉर्म चलाना

var bundleComponent = function(bundler, source, component) { 
    //bundler is just browserify('./client/components/TVScheduleTab/render.js') 

    gutil.log('Bundling ' + component) 

    return bundler 
    //this throws an error 
    .transform(babelify, envify({ 
     NODE_ENV: 'production' 
    })) 
    .bundle() 
    .on('error', function(e){ 
     gutil.log(e); 
    }) 
    .pipe(source) 
    .pipe(gulp.dest('output/')); 
}; 

उत्तर

1

क्या आपने चेनिंग करने का प्रयास किया है? सही समाधान टिप्पणियां

var bundleComponent = function(bundler, source, component) { 
    //bundler is just browserify('./client/components/TVScheduleTab/render.js') 

    gutil.log('Bundling ' + component) 

    return bundler 
    //this throws an error 
    .transform(babelify) 
    .transform(envify({ 
     NODE_ENV: 'production' 
    })) 
    .bundle() 
    .on('error', function(e){ 
     gutil.log(e); 
    }) 
    .pipe(source) 
    .pipe(gulp.dest('output/')); 
}; 
+0

हाँ, और मैं भी उन्हें एक सरणी के रूप में गुजर रहा है और यह भी उन्हें एक वस्तु मैं browserify में पारित में निर्दिष्ट जोड़ने की कोशिश की है। मेरे पास "ब्राउजरिफाइ" भी है: { "ट्रांसफॉर्म": [ "ब्राउजरिफाइ-शिम" ] }, 'मेरे पैकेज.जेसन में। यकीन नहीं है कि यह किसी भी तरह से हस्तक्षेप कर रहा है। – SYU88

+0

क्या आपने इस समस्या को पढ़ा है - https://github.com/hughsk/envify/issues/27? – ahz

+0

यह भी महत्वपूर्ण प्रतीत होता है, लेकिन यह स्पष्ट नहीं है कि आपको कैसे envify की आवश्यकता है - https://github.com/hughsk/envify/issues/7#issuecomment-45418761 – ahz

1

इस जवाब को स्वीकार कर लिया जवाब के बाद दिखाई देता हालांकि में है, और कुछ हद तक स्वीकार किए जाते हैं सवाल को शामिल किया गया है, मैं यह बिना स्पष्ट जुड़ा हुआ GitHub मुद्दे माध्यम से नेविगेट करने की जरूरत बनाना चाहते थे।

श्रृंखलन, envify साथ विशेष रूप से, दिखना चाहिए:

// NOTE: the "custom" part 
var envify = require('envify/custom'); 

gulp.task('build-production', function() { 
    browserify(browserifyOptions) 
     .transform(babelify.configure(babelifyOptions)) 
     .transform(envify({ 
      NODE_ENV: 'production' 
     })) 
     .bundle() 
     .on('error', handleErrors) 
     .pipe(source('app.js')) 
     .pipe(buffer()) 
     .pipe(uglify({ mangle: false })) 
     .pipe(gulp.dest('./build/production/js')); 
}); 
संबंधित मुद्दे