webpack4 copy-webpack-plugin error: неожиданный символ '@' - PullRequest
0 голосов
/ 05 октября 2018

Я прошел SO вопросы, и ответы на них, похоже, связаны только с правилами модуля CSS / SASS.

Я просто пытаюсь скопировать файлы (сохраняя структуру папок) из src до public , без хеширования и т. Д., Поэтому я использую CopyWebpackPlugin - так же, как в Webpack 3

const path = require('path');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');


module.exports = {
    entry: {
        app: './src/index.js'
    },
    output: {
        path: path.join(__dirname,'/public'),
        filename: 'bundle.js'
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: 'babel-loader',
                    options: {
                        // plugins: ['transform-runtime'],
                        // presets: ['es2015','react']
                        // plugins: ['transform-class-properties']
                    }
                }
            },
            {
                test: /\.scss$/,
                use: ["style-loader","css-loader","sass-loader"]
            }
        ]
    },
    plugins: [
        new CleanWebpackPlugin(['public']),

        new HtmlWebpackPlugin({
            template: './src/index.html'
        }),

        new CopyWebpackPlugin([
        {from: 'images', to: 'images' },
            {context: 'images', from: '**/*', to: 'images' },
            {context: 'vendor', from: '**/*', to: 'vendor' },
            {context: 'data', from: '**/*', to: 'data' }
        ]),
    ]
};

В src / images / * хранятся несколько папок с изображениями*. * Вышеупомянутая установка CopyWebpackPlugin работала нормально в Webpack3, но я продолжаю получать эту ошибку:

ОШИБКА в ./src/images/logos/logo-gs_transp-LT.png 1: 0 Сбой разбора модуля: Неожиданный символ '�' (1: 0) Вам может потребоваться соответствующий загрузчик для обработки этого типа файла.

1 Ответ

0 голосов
/ 05 октября 2018

Вам необходимо добавить загрузчик для обработки типов файлов изображений.Например:

module: {
  rules: [{
   test: /\.(png|svg|jpe?g|gif|ico)$/,
   loader: 'file-loader',
  }]
}
...