为了账号安全,请及时绑定邮箱和手机立即绑定

Vue DOM 图像无法正确显示

Vue DOM 图像无法正确显示

呼如林 2024-01-11 16:46:41
我正在使用 Vue 框架并使用该函数创建图像DomUtil.Create。在此图像中,我想动态地将源写入该图像。但该图像不会向用户显示。我使用标签在页面上放置了一个普通图像<img>,它在这里工作。仅当创建 DOM 元素时它才不起作用。我将路径硬编码在这里,以确保路径是正确的。var img = L.DomUtil.create("img", "popUpImg", divImg);img.src = '@/assets/pictures/1.png';
查看完整描述

1 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

使用require()

绑定到项目路径/文件名时,请使用require

require('@/assets/pictures/1.png');

如果您在 Vue CLI 中使用项目资源路径和文件名,Webpack 实际上会在捆绑时重命名它们。img src 如果您在模板中使用字符串路径,Vue CLI 会悄悄地处理这个问题。但在任何其他情况下,您需要手动使用 Webpackrequire在运行时提供正确的路径和文件名。

-注意:您可以npm run build检查dist>img文件夹来亲自查看重命名情况。-


我可以使用变量吗require()

使用可变路径/文件名时,require需要一些帮助。您必须至少将路径的第一部分硬编码为字符串。

  • 例如,这有效:

const filename = '1.png';
require('@/assets/pictures/' + filename); // <-- The string is needed
  • 这也有效:

const path = 'assets/pictures/1.png';
require('@/' + path); // <-- This is good enough too
  • 但这是行不通的:

const fullpath = '@/assets/pictures/1.png';
require(fullpath); // <-- No. Can't infer the path from a variable only


查看完整回答
反对 回复 2024-01-11
  • 1 回答
  • 0 关注
  • 46 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信