我们平常开发都有遇到这富文本这样的需求。正常来说,后台使用富文本编辑一些文章,然后存储到数据后这些数据会携带一些 html 标签,例如:
<p>标题测试1</p>
<p></p>
<h1>哈哈哈哈,测试进行中</h1>
但是我们前端获取到这些字段去页面上展示,总不能把这些标签也展示到页面上把,我们应该怎么做呢?
解决这个问题有两种方法:
- 通过 Vue 中的 v-html 方案解决这个富文本标签的问题!
vue中v-html 标签,用解析设置带有html标签的文本
使用:
<!-- 直接使用即可 -->
<p v-html="content"/>
- 通过 js 来替换富文本中的标签
实现方法:通过 relace 方法,将匹配正则表达式的文本内容都替换成空即可实现。
/**
* tagStr 携带 html 标签的文字内容
*/
deleteTag(tagStr) {
let regx = /<[^>]*>|<\/[^>]*>/gm;
console.log("替换之前的字符串:", tagStr);
let result = tagStr.replace(regx,"");
console.log("替换之后的字符串:", result);
}