Добавление плагинов в веб-пакет нарушает его - PullRequest
0 голосов
/ 11 июня 2019

Я использую webpack 3.5.6 и пытаюсь использовать следующий плагин:

https://www.npmjs.com/package/copy-webpack-plugin

Так вот мой код веб-пакета:

var path = require("path");
var DIST_DIR = path.resolve(__dirname, "public");
var SRC_DIR = path.resolve(__dirname, "src");

const CopyPlugin = require('copy-webpack-plugin');
var config = {
//entry: [ SRC_DIR + "/app/index.js"],
plugins:[new CopyPlugin([
    { from: '/deployment-config/robots-stg.txt', to: '/' }
])],
entry: [ SRC_DIR + "/app/client.js"],
output: {
    path: DIST_DIR ,
    filename: "bundle.js"
},
module: {
    loaders: [
        {
            test: /\.js?/,
            include: SRC_DIR,
            loader: "babel-loader",
            query: {
                "plugins": ["transform-decorators-legacy", "transform-class-properties","transform-decorators"],
                presets: [
                    "react",
                    "es2015",
                    "stage-2",
                    ['env', {targets: {browsers: ['last 3 versions']}}]]
            }
        }, {
            test: /\.s?css/,
            include: SRC_DIR,
            loaders: ["style-loader","css-loader","sass-loader"]
        },
        { test: /\.(svg|woff|ttf|wav|mp3)$/, loader: "file-loader" },
        {
            test: /\.(png|jpe?g|gif)$/,
            loader: 'url-loader?limit=25000&name=img/[name].[ext]'
        }
      ]
   }
};

  module.exports = config;

Когда я запускаю это, я получаю следующую ошибку:

\node_modules\webpack\bin\webpack.js:348
                    throw err;
                    ^

  TypeError: Cannot read property 'emit' of undefined

как только я удаляю раздел плагинов все работает нормально. Я неправильно добавляю плагин?

1 Ответ

0 голосов
/ 11 июня 2019

При копировании в каталог необходимо указать параметр toType в CopyWebpackPlugin.По умолчанию плагин предполагает to путь к файлу.Попробуйте это:

plugins:[new CopyPlugin([
  { from: '/deployment-config/robots-stg.txt', to: '/', toType: "dir" }
])],

Подробнее об этой опции здесь .

...