javascript - 使用 Vue.js 在 v-for 中设置背景图片

标签 javascript css vue.js webpack vuejs2

我正在尝试使用 Vue.js 和 v-for 中的 require 将 CSS 背景图像添加到动态 style block 中。

  <div v-for='item of this.$store.state.offers'
       :key="item.id"
       :style="{'background-image': 'url(' + require('../../assets/men.jpg') + ')'}"
  >

问题是上面的代码静态工作,但如果我将其替换为 require 括号中的 ${item.img} ,它就会崩溃。有办法吗?

最佳答案

假设您的每个图像都有静态编写的路径,您可以这样做:

:style="{'background-image': 'url(' + require(`${item.img}`) + ')'}"

或者

:style="{'background-image': 'url(' + require('' + item.img) + ')'}"

或者

如果您只想使用图像中的文件名而不使用路径,您可以这样做:

:style="{'background-image': 'url(' + require('@/assets/' + item.img) + ')'}"

关于javascript - 使用 Vue.js 在 v-for 中设置背景图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60694691/

相关文章:

javascript - 创建可编辑样式 JS 或内联样式

"not A and not B"的 CSS3 选择器?

javascript - Vue.js - 刷新时使用当前的 localStorage 更新数组

vue.js - 如何修复 Stripe API 错误 : "IntegrationError: We could not retrieve data from the specified Element." in a Vue component?

javascript - YUI 富文本编辑器在最新的 Firefox 上损坏

javascript - 如何检查 DOM 节点是否为 `html` 节点

javascript - TinyMCE 5.x - 突出显示自定义下拉菜单中的元素

javascript - 使用 jQuery 函数以编程方式编号 <h1-h6>

css - 将 box-shadow 解释为 canvas ShadowXXX 选项

javascript - 无法让 Vue.js 过渡正常工作?