uniapp富文本编辑器rich-text不起作用 不能用

后台过来的富文本数据大多都是转义字符,所以不能在rich-text中直接使用 无法正常解析,所以需要进行反转义

<rich-text class="xcontent" :nodes="formatRichText(show.content)" v-if="show.content"></rich-text>

			formatRichText(content) {
				// 将所有的 "px" 替换为 "rpx"
				let newrichtext = content.replace(/px/g, 'rpx');

				// 处理 <img> 标签的样式
				newrichtext = newrichtext.replace(/<img.*?style="(.*?)"/g, (match, styleContent) => {
					const updatedStyle = styleContent.replace(/px/g, 'rpx');
					return `<img style="${updatedStyle}"`;
				});

				// 处理段落 <p> 标签的字体大小
				newrichtext = newrichtext.replace(/<p style=".*?font-size: (\d+)px(.*?)"/g, (match, fontSize, rest) => {
					return `<p style="font-size: ${fontSize}rpx${rest}"`;
				});

				// 处理 HTML 实体字符
				newrichtext = newrichtext.replace(/&(lt|gt|nbsp|amp|quot);/g, (match, entity) => {
					const entities = {
						'lt': '<',
						'gt': '>',
						'nbsp': ' ',
						'amp': '&',
						'quot': '"'
					};
					return entities[entity];
				});

				return newrichtext;
			},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值