Я передаю имя изображения (this.props.backgroundImg) в качестве опоры для компонента (который указывает на "правосудие.jpg"). В компоненте получателя я добавляю относительный путь с использованием литерала шаблона к атрибуту sr c в теге img. Пока все хорошо.
Когда страница отображается браузером, ошибки нет, но в инструменте браузера Network chrome я вижу объект% 20module вместо файла изображения.
Имя файла, созданное с использованием относительного пути и строкового литерала шаблона, указывает на файл изображения, так как нет ошибки 404 файл не найден.
Пожалуйста, дайте мне знать, что мне здесь не хватает, с правильным объяснением для лучшего понимания?
Изображение отображается в браузере, когда я импортирую файл "landingPageBkg"
Код компонента следующий.
import React from 'react';
//import landingPageBkg from '../../../public/assets/justice.jpg'
class LandingPage extends React.Component {
componentDidMount() {
setTimeout(()=>{
this.props.history.push('/pagenotfound');
},30000)
}
render() {
console.log(typeof `../../../public/assets/${this.props.backgroundImg}`)
return (
<div className="landingPageImg">
<img src={require(`../../../public/assets/${this.props.backgroundImg}`)} className="landingPageImg"/>
</div>
);
}
}
export default LandingPage;
Конфигурация загрузчика URL Webpack: -
module: {
rules: [
{
loader: 'babel-loader',
test: /\.js$/,
exclude: /node_modules/,
},
{
test: /\.s?css$/,
use: ['style-loader',
'css-loader', 'sass-loader'],
},
{
test: /\.(jpe?g|png|gif|woff|woff2|eot|ttf|svg|jpg)(\?[a-z0-9=.]+)?$/,
loader: 'url-loader',
},
],