You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue.js项目中vue-swal弹窗内HTML代码无法正常渲染问题咨询

vue-swal 弹窗HTML无法渲染问题解决

问题成因

  • 安全限制:vue-swal默认关闭HTML渲染能力,所有传入的标签会被自动转义为纯文本,避免XSS注入风险。
  • 参数不兼容:你使用的配置是新版SweetAlert2的参数规则,而npm的vue-swal包基于旧版SweetAlert1封装,二者参数逻辑不同:
    1. 旧版中html是布尔类型的开关参数,不是HTML内容的传入字段
    2. 旧版默认title和text字段都仅支持纯文本,必须开启HTML开关才会解析标签。

解决方案

调整配置参数,先开启HTML解析开关,再把弹窗内容传入到text字段即可,修改后代码如下:

this.$swal({
  title: '<i>Custom HTML</i>',
  // 开启HTML解析权限
  html: true,
  // HTML内容传入text字段
  text: `This is an <em> emphasized text </em>, <a href="#">links</a><strong>And other tags</strong>`,
  showCloseButton: true,
  showCancelButton: true,
  focusConfirm: false,
});

注意事项

开启HTML渲染后,请确保你传入的弹窗内容是可控可信的,不要直接渲染未过滤的用户提交内容,避免出现XSS安全漏洞。

内容的提问来源于stack exchange,提问作者user3653474

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:36:03