Можно ли получить URL изображения из image_pack_tag? - PullRequest
0 голосов
/ 22 сентября 2019

Фон

В файле по умолчанию packs/application.js вас встречают следующие комментарии

// Uncomment to copy all static images under ../images to the output folder and reference
// them with the image_pack_tag helper in views (e.g <%= image_pack_tag 'rails.png' %>)
// or the `imagePath` JavaScript helper below.
//
// const images = require.context('../images', true)
// const imagePath = (name) => images(name, true)

Используя эти комментарии, я создал следующие функции JavaScript, чтобы включить все в app/assets/images

const images = require.context('../../assets/images', true)
const imagePath = (name) => images(name, true)

Я могу вызвать помощника image_pack_tag следующим образом:

<%= image_pack_tag 'media/images/logo.svg' %>

Однако у меня есть HTML-тег, в который мне нужно добавить фон.На данный момент это выглядит так:

<section class="bg-cover" style="background-image: url(assets/img/covers/cover.jpg);">

Вопрос

Можно ли мне извлечь путь к изображению из image_pack_tag, чтобы я мог сделать это:

<section class="bg-cover" style="background-image: url(<%= image_pack_tag_url 'media/covers/cover.jpg' %>);">

1 Ответ

0 голосов
/ 23 сентября 2019

Используйте помощник asset_pack_path.В.В вашей ситуации вы хотите использовать:

asset_pack_path 'media/covers/cover.jpg'

В фоновом атрибуте это становится:

<section class="bg-cover" style="background-image: url(<%= asset_pack_path 'media/covers/cover.jpg' %>);">
...