Vue3 开发中,字符串中的 <br\> 标签被直接当作文本显示出来了,而不是被解析为 HTML 换行标签

html 复制代码
<div class="dialog-content">
    <span>{{ previewContent }}</span>
</div>
js 复制代码
const previewContent = ref("Authorization: Bearer 【eyJhbGci...】<br\>X-Access-Token: 【eyJhbGci...】");
  • 在前端 Vue3 开发中,字符串中的 <br\> 标签被直接当作文本显示出来了,而不是被解析为 HTML 换行标签
处理策略
  1. 最直接的方式是使用 v-html 指令,但是使用 v-html 指令时要确保内容是可信任的,避免 XSS 攻击
html 复制代码
<div class="dialog-content">
    <span v-html="previewContent"></span>
</div>
  1. 更安全、更推荐的方式是,避免使用 v-html 指令,可以用 CSS 的 white-space 属性来处理换行
html 复制代码
<div class="dialog-content multiline-text">
    <span>{{ previewContent }}</span>
</div>
js 复制代码
const previewContent = ref("Authorization: Bearer 【eyJhbGci...】\nX-Access-Token: 【eyJhbGci...】");
  1. 最灵活的方式是,使用数组渲染,可以对每一行进行单独控制
html 复制代码
<div class="dialog-content">
    <div v-for="(line, index) in previewContents" :key="index">
        {{ line }}
    </div>
</div>
js 复制代码
const previewContents = ref(["Authorization: Bearer 【eyJhbGci...】", "X-Access-Token: 【eyJhbGci...】"]);
相关推荐
运维行者_2 小时前
MSP网络管理破局者:IPAM+SPM插件终结IP冲突与安全威胁
运维·服务器·开发语言·网络·安全·web安全·php
人间打气筒(Ada)2 小时前
「码动四季·开源同行」go语言:如何处理 Go 错误异常与并发陷阱?
开发语言·后端·golang·defer·panic·errors·并发陷阱
wjcroom2 小时前
电子python模拟出的一个完美风暴
开发语言·python·数学建模·物理学
aini_lovee2 小时前
基于多时间尺度滚动优化的多能源微网双层调度模型(MATLAB实现)
开发语言·matlab·能源
极创信息2 小时前
不同开发语言程序如何做信创适配认证?完整流程与评价指标有哪些
java·c语言·开发语言·python·php·ruby·hibernate
女王大人万岁2 小时前
Golang实战gin-swagger:自动生成API文档
服务器·开发语言·后端·golang·gin
洛阳吕工2 小时前
【Python 教程】无人机 MAVLink 通信完整实战:连接飞控、接收数据与发送指令
开发语言·python·无人机
小辉同志2 小时前
79. 单词搜索
开发语言·c++·leetcode·回溯
娇娇爱吃蕉蕉.2 小时前
类和对象的默认成员函数
c语言·开发语言·c++·算法