需求

在搜索框输入搜索关键字,若列表中,客户名与搜索关键词相同,则标蓝色;若N个字相同,则N个字均标成蓝色。

一、贴个UI图

若N个字相同,则N个字均标成蓝色。例如输入陈晓,则陈晓两字均标成蓝色。
在这里插入图片描述

二、思路

将列表的客户名postName拆分为数组,将数组循环,再做样式的动态绑定(此处省略外层列表循环)。

//css
<text v-for="(item,index) in postName.split('')" :key="index" :style="setColor(item)">
		{{item}}
</text>
//methods
// 设置模糊搜索的匹配字体颜色(inputVal为输入关键字)
	setColor(e) {
		// 代表在搜索关键字中存在相匹配的串
		if (this.inputVal.indexOf(e) != -1) {
			return 'color:#007AFF'
			}
	},

三、实现效果

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐