前言:
目前有个需求是,要把输入框里面的@还有姓名高亮。
要求:
1、必须用 v-html ,带标签的给他渲染文章来源:https://www.toymoban.com/news/detail-673653.html
2、把字符串中的@全部查找出来,替换掉,注意要过滤已经替换好的,不然就是无限循环了文章来源地址https://www.toymoban.com/news/detail-673653.html
实现方法:
// 消息展示中处理@样式
const textPointTo = (content:any) => {
let index = value.indexOf('@');
while (index !== -1) {
const endIndex = value.indexOf(' ', index);
const replaceStr = value.substring(index, endIndex !== -1 ? endIndex : undefined);
value = value.replace(replaceStr, `<span class='replyPointTo'>${replaceStr.split('@')[1]}</span> `);
index = value.indexOf('@', index + 1);
}
return value.replace(/PointTo'>/g, "PointTo'>@")
};
到了这里,关于vue实现把字符串中的所有@内容,替换成带标签的的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!