如果 <img src="../assets/image/t-logo3.png" class="rec-icon">
在弹出消息中不显示,可能是由于以下原因:
- 相对路径问题:在 Vue 中,静态资源的路径可能需要不同的处理方式。您可能需要使用绝对路径或考虑使用 webpack 的
require
方法。 - 安全策略:当使用
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
部分以确保正确的上下文绑定。
这只是一些建议,您可能需要根据实际情况进行调整。如果问题仍然存在,请提供更多信息,我会尽量帮助您解决。