Babpack-loader的Webpackstream问题

时间:2016-10-01 20:29:07

标签: gulp webpack babeljs loader gulp-webpack

我有一个适用于Mac的设置正常运行,但在Windows上相同的设置似乎失败了。巴贝尔装载机似乎没有做任何事情。这是我目前的设置:

Error code description

的package.json

"devDependencies": {
  "babel-core": "^5.8.23",
  "babel-loader": "^5.3.2",
  "babel-preset-es2015": "^6.16.0",
  "del": "^2.0.2",
  "gulp": "github:gulpjs/gulp#4.0",
  "gulp-bytediff": "^1.0.0",
  "gulp-cached": "^1.1.0",
  "gulp-changed": "^1.1.1",
  "gulp-cli": "github:gulpjs/gulp-cli",
  "gulp-connect": "^2.2.0",
  "gulp-filesize": "0.0.6",
  "gulp-html": "^0.4.3",
  "gulp-iconfont": "^1.0.2",
  "gulp-imagemin": "^2.2.1",
  "gulp-jshint": "^1.11.2",
  "gulp-load-plugins": "^0.10.0",
  "gulp-minify-css": "~0.5.1",
  "gulp-notify": "^2.2.0",
  "gulp-plumber": "^1.0.1",
  "gulp-rename": "^1.2.0",
  "gulp-run": "^1.6.11",
  "gulp-sass": "^2.1.0-beta",
  "gulp-scss-lint": "^0.3.0",
  "gulp-sourcemaps": "^1.5.0",
  "gulp-swig": "^0.7.4",
  "gulp-uglify": "^1.4.1",
  "gulp-util": "^3.0.4",
  "gulp-zip": "^3.0.2",
  "jshint-stylish": "^2.0.1",
  "lodash": "^3.10.1",
  "merge-stream": "^0.1.7",
  "minimist": "^1.2.0",
  "nodemailer": "^1.5.0",
  "require-dir": "^0.1.0",
  "vinyl-named": "^1.1.0",
  "vinyl-source-stream": "~1.0.0",
  "webpack": "^1.12.1",
  "webpack-stream": "^3.2.0"
},
"dependencies": {
  "babel-loader": "^5.4.2",
  "fastclick": "^1.0.6",
  "google-maps": "^3.2.1",
  "jquery": "^2.1.4",
  "js-cookie": "^2.1.0",
  "js-marker-clusterer": "^1.0.0",
  "lodash": "^3.10.1",
  "select2": "^4.0.0"
}

(gulp command)script.js

.pipe(webpackStream({
      watch: false,
      plugins: [
        // Make jQuery globally availble in all scripts
        new webpack.ProvidePlugin({ $: 'jquery', jQuery: 'jquery', 'window.jQuery': 'jquery' })
      ],
      module: {
        loaders: [
          {
            test: /.*\/scripts\/website\/.*\.jsx?$/,
            exclude: 'node_modules',
            loader: 'babel',
            query: {
              presets: ['es2015'],
            },
            resolve: {
              root: [ path.join(__dirname, 'node_modules/') ],
              extensions: [ '', '.js', '.html' ],
              modulesDirectories: [ 'node_modules' ],
              alias: config.scripts.webpackAliases
            }
          }
        ]
      }
    }))

1 个答案:

答案 0 :(得分:0)

你应该同时使用" webpack" &安培; "的WebPack流"在您的" gulpfile.js"中,如果您正在使用" babel.gulpfile.js"

,则需要它们或导入
const webpack = require('webpack');
const webpackStream = require('webpack-stream');

因此,在您的gulp任务中,您应该在管道中使用webPack流并将两个参数传递给它:

  1. webpack config(最好使用单独的文件)
  2. webpack(之前需要)

    .pipe(webpackStream(require(' ./ webpack.config.js'),webpack))

  3. BTW使用" babel-loader"而不是" babel"在你的webpack配置

    Source