2016-08-15 75 views
1

我想下面browserify工作流程遷移到一個單一的一飲而盡任務:移動browserify工作流程到一飲而盡任務[vueify,browserify,babelify]

的package.json:

"scripts": { 
    "build": "browserify src/main.js > dist/build.js" 
}, 
... 
"browserify": { 
    "transform": [ 
    "vueify", 
    "babelify" 
    ] 
} 

.babelrc文件:

{ 
    "presets": ["es2015"] 
} 

由於gulp-browserify現在不再維護,我用this recipe得到整個工作流程到一個單一的一飲而盡任務:

gulp.task('build', function() { 
    var b = browserify({ 
     entries: './src/main.js', 
     debug: true, 
     transform: [vueify, babelify.configure({presets: ["es2015"]})] 
    }); 
    return b.bundle() 
     .pipe(source('build.js')) 
     .pipe(buffer()) 
     .on('error', gutil.log) 
     .pipe(gulp.dest('./dist/')); 
    }); 

不幸的是,生成的build.js文件是不同的,只有build.js文件由命令npm run build產生的正常運行我Vue.js應用。

+0

歡迎來到SO @HackMac,你能清楚地說出問題所在嗎? – ewitkows

+0

我試圖以同樣的方式(和失敗)做同樣的事情。我使用App.vue和Hello.vue將我的工作放在vue cli默認應用程序上。 App.vue得到正確處理,而Hello.vue儘管由App.vue導入,但仍未得到vueify的處理。浪費了好幾個小時試圖完成這個工作,所以如果你找到了問題,我希望你不要介意分享:) – LOAS

回答

0

我只是設法自己解決了這個問題。在調試器中花費了一點時間後,我發現browserify使用的變換數組包含兩次「babelify」和「vueify」。

然後會發生什麼情況可能是變換應用如下:bablify - > vueify - > babelify - > vueify。我沒有花太多時間弄清究竟是如何炸燬我的東西,因爲問題很容易擺脫。

要麼在package.json中指定browserify變換,要麼在你的gulp文件中指定browserify變換。不是都。

相關問題