uni-app 关键字高亮

这里直接上代码了,备注都在代码里

<template>
	<rich-text :nodes="html"></rich-text>
</template>

<script>
	export default {
		props: {
			content: {	// 需要高亮的内容
				type: String,
				default: ''
			},
			keys: {	// 高亮的关键字,多个用 | 隔开
				type: String,
				default: ''
			},
			color: {	// 高亮颜色
				type: String,
				default: '#FD463E'
			},
			weight: {	// 是否加粗
				type: Boolean,
				default: false
			}
		},
		computed: {
			html() {
				if (this.keys === '') {
					return this.content;
				}
				var reg = new RegExp((`(${this.keys})`), "gm");
				var color = this.color || '#FD463E';
				var weight = this.weight ? 'bold' : 'normal';
				var replace = '<span style="color:' + color + ';font-weight: ' + weight + ';">$1</span>';
				return this.content.replace(reg, replace);
			}
		},
	}
</script>

<style>
</style>

这里封装成了一个组件我在这里命名uni-highlight

使用方法<uni-highlight :content="'大鱼吃小鱼'" :keys="'吃'" :color="'#FF7639'" :weight="true"></uni-highlight>

最后来张效果图吧

如果对你有用,关注一下博主的小程序,登录一下给予支持,以后有什么开源好用的源码都会上传到小程序 

 

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值