是否可以从image_pack_tag获取图像的URL?

时间:2019-09-22 12:24:46

标签: ruby-on-rails webpacker

背景

在默认的// 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) 文件中,您会收到以下注释

app/assets/images

使用这些注释,我创建了以下JavaScript函数,以将所有内容包括在const images = require.context('../../assets/images', true) const imagePath = (name) => images(name, true)

image_pack_tag

我可以这样呼叫<%= image_pack_tag 'media/images/logo.svg' %> 助手:

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

但是,我有一个HTML标签,需要在其中添加背景。现在,看起来像这样:

image_pack_tag

问题

我是否可以从<section class="bg-cover" style="background-image: url(<%= image_pack_tag_url 'media/covers/cover.jpg' %>);"> 提取图像的路径,以便执行此操作:

{{1}}

1 个答案:

答案 0 :(得分:1)

使用asset_pack_path助手。在。您的情况,您想使用:

asset_pack_path 'media/covers/cover.jpg'

在background属性中,它变为:

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