Проблемы Webpackstream с babel-загрузчиком

У меня есть настройки, работающие нормально для Mac, но такая же установка, похоже, не работает в Windows. Похоже, загрузчик не работает. Вот моя текущая настройка:

Описание кода ошибки

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)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 ответ

Вы должны использовать оба "webpack" и "webpack-stream" в вашем "gulpfile.js", так что требуйте их или импортируйте, если вы используете "babel.gulpfile.js"

const webpack = require('webpack');
const webpackStream = require('webpack-stream');

Таким образом, в вашей задаче gulp вы должны использовать поток webPack в вашем канале и передать ему два аргумента:

  1. Конфигурация веб-пакета (лучше использовать отдельный файл)
  2. веб-пакет (который требовался ранее)

    .pipe (webpackStream (требуется ('./ webpack.config.js'), webpack))

Кстати, используйте "babel-loader" вместо "babel" в конфигурации вашего веб-пакета

Источник

Другие вопросы по тегам