一、去除数据里的<img>标签
delHtmlTag(str) {
str = str.replace(/<[^>]+>/g, ''); //去掉所有的html标记
return str.replace(/\s+/g,''); //去掉所有空格
}
二、详情数据处理
/<\s*img\s+[^>]*?size\s*=\s*(.*?)[^>]*?\/?\s*>/i.test(el) //判断是否是<img></img>标签包裹的数据
/<img.*?(?:>|\/>)/gi.test(el) //直接验证是否为<img></img>标签包裹,用上一种可能报错
/^https:\/\/.*/i.test(imgObj.url) // 判断数据是否是以https开头的图片地址
el.replace('<txt>','<p>').replace('</txt>','</p>') //将数据中的<txt></txt>标签替换为<p></p>
data.data.wdescContent.pages.forEach(el => {
if (/<\s*img\s+[^>]*?size\s*=\s*(.*?)[^>]*?\/?\s*>/i.test(el)) {
let imgObj = {
url: this.delHtmlTag(el)
};
var https = /^https:\/\/.*/i.test(imgObj.url);
if (!https) {
imgObj.url = 'https:' + imgObj.url;
}
this.detailImgList.push(imgObj);
}else{
this.goodsDetailObj.detailContent += el.replace('<txt>','<p>').replace('</txt>','</p>');
}
});
三、测试图如下
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。