data:{
listDataCopy:[]
}
// 搜索关键字
searchTap: function () {
var that = this;
that.setData({
listDataCopy: that.data.listData
})
var data = that.data.listData;
var newData = that.data.listDataCopy;
for (var i = 0; i < data.length; i++) {
var dic = data[i];
var newDic = newData[i];
var fund_name = dic["startName"];
newDic["startName"] = getInf(fund_name, that.data.keyName);
var fund_id = dic["parentStartName"];
newDic["parentStartName"] = getInf(fund_id, that.data.keyName);
console.log(newDic["startName"])
console.log(fund_name)
}
newData是将数据分割成三部分1.是根据搜索的文字所在的文职做的截取中间是变色的文字后面是未搜索到的文字,当搜索的文字是第一位或者是最后一位的话,该生成的新数组的数据前为空字符或者后为空字符串,
that.setData({
listDataCopy: newData,
})
},
// 去除首尾的空格
trim: function (s) {
return s.replace(/(^\s*)|(\s*$)/g, “”);
},
//注: listData是取的后台数据
that.setData({
listData:res //给数据赋值
})
调用对应的函数 that.searchTap();
调用之后,点击搜索的文字需要将其拼接在一起 此处采用的比较死的办法
因为你的数据可能不是搜索得来的就需要判断该数据是数组才进行拼串
if(Array.isArray(address)){
address = address[0] + address[1] + address[2]
}
要是有好的办法记得跟我讲哦,