如何去除富文本中的html标签及vue、react、微信小
网络编程 2021-07-04 16:47www.168986.cn编程入门
这篇文章主要介绍了如何去除富文本中的html标签及vue、react、微信小程序中的过滤器,在vue及react中经常会遇到,今天通过实例代码给大家讲解,需要的朋友可以参考下
在获取富文本后,又只要显示部分内容,需要去除富文本标签,然后再截取其中一部分内容;然后就是过滤器,在微信小程序中使用还是挺多次的,在vue及react中也遇到过
1.富文本去除html标签
去除html标签及 空格
let richText = ' <p style="font-size: 25px;color: white"> sdaflsjf的丰富及饿哦塞尔</p><span>dsfjlie</span>'; / 去除富文本中的html标签 / / 、+限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配。/ let content = richText.replace(/<.+?>/g, ''); console.log(content); / 去除 / content = content.replace(/ /ig, ''); console.log(content); / 去除空格 / content = content.replace(/\s/ig, ''); console.log(content);
截取字符串
content = formatRichText(content); console.log(content); / 使用substring来截取字符串 / if (content.length > 10) { content = content.substring(0, 10) + '...'; } console.log(content); / 限制字数后添加省略号 / function formatRichText(richText) { let temporaryText = ''; / 设置多长后添加省略号 / const len = 142; if (richText.length 2 <= len) { return richText; } / 用于记录文字内容的总长度 / let strLength = 0; for (let i = 0; i < richText.length; i++) { temporaryText = temporaryText + richText.charAt(i); / charCodeAt()返回指定位置的字符的Unicode编码,值为128以下时一个字符占一位,当值在128以上是一个字符占两位 / if (richText.charCodeAt(i) > 128) { strLength = strLength + 2; if (strLength >= len) { return temporaryText.substring(0, temporaryText.length - 1) + "..."; } } else { strLength = strLength + 1; if (strLength >= len) { return temporaryText.substring(0, temporaryText.length - 2) + "..."; } } } return temporaryText; }
2.vue中使用过滤器
filters: { localData(value) { let date = new Date(value 1000); let Month = date.getMonth() + 1; let Day = date.getDate(); let Y = date.getFullYear() + '年'; let M = Month < 10 ? '0' + Month + '月' : Month + '月'; let D = Day + 1 < 10 ? '0' + Day + '日' : Day + '日'; let hours = date.getHours(); let minutes = date.getMinutes(); let hour = hours < 10 ? '0' + hours + ':' : hours + ':'; let minute = minutes < 10 ? '0' + minutes : minutes; return Y + M + D + ' ' + hour + minute; } } / 使用,直接在div中添加就可以了,| 前面的是参数,后面的是过滤器 / <div class="time">{{data.etime | localData}}</div>
3.微信小程序中使用过滤器
新建.wxs文件
var localData = function (value) { var date = getDate(value 1000); var Month = date.getMonth() + 1; var Day = date.getDate(); var hours = date.getHours(); //计算剩余的小时 var minutes = date.getMinutes(); //计算剩余的分钟 var Y = date.getFullYear() + '-'; var M = Month < 10 ? '0' + Month + '-' : Month + '-'; var D = Day + 1 < 10 ? '0' + Day + '' : Day + ''; var H = hours < 10 ? '0' + hours + ':' : hours + ':' var m = minutes < 10 ? '0' + minutes : minutes; return Y+M + D + " " + H + m; } module.exports = { localData: localData }
使用,用<wxs />标签来引入,src为路径,module为引入的文件模块名
<wxs src="./filters.wxs" module="tool" /> <text class="scoreText">{{tool.filterScore(item.shop.score)}}分</text>
直接在.wxml文件中用<wxs></wxs>包裹
<wxs module="foo"> var some_msg = "hello world"; module.exports = { msg : some_msg, } </wxs> <view> {{foo.msg}} </view>
4.react中使用
react中使用,其实就是定义一个方法
import noBanner from '@/assets/storeDetail/no-banner.jpg' const filterImg = item => { let bgImg; if (item.shopimages == null) { bgImg = noBanner; } else { bgImg = item.shopimages[0]; } return bgImg; }; / 使用 / <img src={filterImg(storeitem)} className={style.Img} alt="" />
以上所述是长沙网络推广给大家介绍的如何去除富文本中的html标签及vue、react、微信小程序中的过滤器,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指