如果 <img src="../assets/image/t-logo3.png" class="rec-icon"> 在弹出消息中不显示,可能是由于以下原因:

  1. 相对路径问题:在 Vue 中,静态资源的路径可能需要不同的处理方式。您可能需要使用绝对路径或考虑使用 webpack 的 require 方法。
  2. 安全策略:当使用 dangerouslyUseHTMLString 选项时,某些内容可能会由于安全策略而被过滤或块。

要解决这个问题,您可以尝试以下方法:

1. 使用 require

将您的 <img> 标签中的 src 更改为使用 webpack 的 require 方法:

const messageContent = `
    ...
    <img src="${require('../assets/image/t-logo3.png')}" class="rec-icon">
    ...
`;

2. 确保图片确实存在于指定的路径:

确保图片 t-logo3.png 确实存在于 ../assets/image/ 路径中,并且该路径相对于当前 Vue 文件是正确的。

3. 检查 CSS:

确保您的 rec-icon 类或任何其他相关的 CSS 不会使图片隐藏或尺寸为0。

4. 确保 this.$t 函数没有问题:

如果 this.$t 函数出现问题或返回一个无效的字符串,它可能会影响整个消息的渲染。试着暂时移除这些函数调用并直接插入一些静态文本,看看图片是否显示。

5. 使用 Vue 的方法,而不是普通的函数:

您定义的 displayPopup 函数是一个普通的 JavaScript 函数,它可能没有正确地绑定到 Vue 实例的上下文,这意味着在该函数中使用 this 可能不会指向 Vue 实例。您可以将此函数移至 Vue 组件的 methods 部分以确保正确的上下文绑定。

这只是一些建议,您可能需要根据实际情况进行调整。如果问题仍然存在,请提供更多信息,我会尽量帮助您解决。

By lxcss

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注