vue把数据里面的\n和image换成标签展示在div里面
时间: 2024-03-06 15:46:33 浏览: 62
vue+axios展示二进制文件流图片
可以使用Vue的模板语法和v-html指令来实现将数据中的`\n`和`<img>`标签转换成HTML标签展示在`<div>`元素中。具体实现如下:
假设有如下的数据:
```javascript
data: {
content: "这是一段包含\n换行和<img src='image.jpg'>图片标签的文本"
}
```
在模板中使用`v-html`指令:
```html
<div v-html="parseContent"></div>
```
在Vue实例中定义`parseContent`计算属性,通过正则表达式替换`\n`和`<img>`标签为HTML标签:
```javascript
computed: {
parseContent() {
return this.content.replace(/\n/g, '<br>').replace(/<img.*?>/g, '<img>')
}
}
```
其中,`<br>`标签用于替换`\n`,`<img>`标签用于替换原有的`<img>`标签,去除`src`属性,避免图片加载失败。
这样就可以实现将数据中的`\n`和`<img>`标签展示在`<div>`元素中。
阅读全文