vue使用v-html实现一段字符串中关键字(词)高亮效果

问题描述

需求:我们搜索某个关键字,后端返回给我们一个字符串,这个字符串中包含我们搜索的关键字,我们需要把这个字符串中的关键字部分加上高亮效果(类似于百度搜索关键字高亮的效果)。我们先看一下,大致类似的效果图:
vue使用v-html实现一段字符串中关键字(词)高亮效果_第1张图片
如上图所示,需求很简单,就是关键字高亮。

思路分析

解决方式有两种,第一种就是进行字符串的切割,把关键字切出来,加上一个颜色。这种方式上一篇文章关于字符串的方法整理的文章已经说过了,不赘述,详情可点击链接跳转瞅瞅。

附上地址: https://segmentfault.com/a/11...

接下来我们说第二种方式,使用v-html指令加上字符串的替换方法,话不多说,上代码。



代码效果图:
image.png
DOM元素审查
vue使用v-html实现一段字符串中关键字(词)高亮效果_第2张图片

总结

v-html好像平常不怎么用到这个vue的指令,不过实际上在某些场景下,使用v-html能够很好的解决问题

你可能感兴趣的:(vue使用v-html实现一段字符串中关键字(词)高亮效果)