Я использую Symfony 3.4 (некоторый устаревший код), и у меня проблемы с импортом ресурсов изображений в файлы js. Согласно docs действительно просто. Итак, я делаю это:
const image = require('../images/the_image.png')
...
`<img src=${image} style="width:32px;height:32px;">`
Однако браузер ищет /[object
вместо фактического пути к изображению. Я также сделал console.log(image)
, и результат был [object Module]
вместо пути publi c.
Все остальные изображения (на которые есть ссылки либо в файлах. css, либо в шаблонах веточек) работают нормально.
Я использую Webpack Encore для создания ресурсов со следующей конфигурацией:
Encore
.setOutputPath('web/build/')
.setPublicPath('/build')
.cleanupOutputBeforeBuild()
// ... js entries
.copyFiles({
from: './web/images',
to: 'images/[path][name].[hash:8].[ext]'
})
// ...
.enableVersioning(Encore.isProduction())
Изображение, которое я импортирую, правильно отображается в файле manifest.json
.
Я не Я не знаю, почему путь publi c не отображается в требовании, это модуль. Может быть, что-то связано с загрузчиком изображений Webpack на бис? Или это поведение по умолчанию, и я должен использовать <img src=${image.default} style="width:32px;height:32px;">
, несмотря на документацию?