Когда я пытаюсь построить Sass файл с WebPack, я получил следующее сообщение об ошибке:Webpack: не может разрешить модуль «файл-загрузчик»
Module not found: Error:Cannot resolve module 'file-loader'
отмечают, что этот вопрос только в том случае, когда я пытаюсь загрузите фоновое изображение, используя относительный путь.
эту работу отлично:
background:url(http://localhost:8080/images/magnifier.png);
это вызывает вопрос:
background:url(../images/magnifier.png);
и это мой проект структуры
- изображения
- стили
- WebPack. config.js
и это мой WebPack файл:
var path = require('path');
module.exports = {
entry: {
build: [
'./scripts/app.jsx',
'webpack-dev-server/client?http://localhost:8080',
'webpack/hot/only-dev-server'
]
},
output: {
path: path.join(__dirname, 'public'),
publicPath: 'http://localhost:8080/',
filename: 'public/[name].js'
},
module: {
loaders: [
{test: /\.jsx?$/, loaders: ['react-hot', 'babel?stage=0'], exclude: /node_modules/},
{test: /\.scss$/, loaders: ['style', 'css', 'sass']},
{test: /\.(png|jpg)$/, loader: 'file-loader'},
{test: /\.(ttf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/, loader: 'file-loader'}
]
},
resolve: {
extensions: ['', '.js', '.jsx', '.scss', '.eot', '.ttf', '.svg', '.woff'],
modulesDirectories: ['node_modules', 'scripts', 'images', 'fonts']
}
};
css-loader преобразует каждый 'url (...)' в 'require (...)', поэтому '../ images/magnifier.png' получает файл' /\.(png|jpg) $/'test. У вас установлен файловый загрузчик? – silvenon
@silvenon, спасибо за ваш ответ *** file-loader *** был сломан, поэтому я его снова установил, и все будет отлично. Спасибо – Moussawi7