Webpacking jQuery和自定义文件:jQuery是未定义的

我使用webpack连接我自己的JS库和JS文件。 目前的设置是这样的

var wpStream = require('webpack-stream')'; var files = ['jquery.js', 'angular.js', 'app.js', 'controller.js', 'etc.js']; gulp.task('pack', function(){ return gulp.src(files) .pipe(wpStream({ output:{filename: 'bundle.js'} }).pipe(gulp.dest('dist')); }); 

这很好。 我的文件被创build,并具有在我的files数组中指定的所有内容。 然而,在页面加载,我得到的错误jQuery is not defined 。 此外,在我的控制台,当我键入jQuery没有jQuery,而是jQuery111206520785381790835 。 当我追加一个点来查看方法列表时,只有正常的对象方法( hasOwnPropertytoString等)。

我如何访问jQuery? webpack用它做了什么?

你必须用webpack ProvidePlugin使全局jQuery可用

 var webpack = require('webpack'); var wpStream = require('webpack-stream'); var path = require('path'); var files = ['app.js', 'controller.js', 'etc.js']; gulp.task('pack', function () { return gulp.src(files) .pipe(wpStream( { output: { filename: 'bundle.js' }, plugins: [ new webpack.ProvidePlugin({ angular: "angular", $: "jquery", jQuery: "jquery" }) ], resolve: { root: path.resolve('./vendor'), // directory that contains jquery.js and angular.js extensions: ['', '.js'] } } ).pipe(gulp.dest('dist')); });