求问,一般论坛的搜索接口,返回的是字符串或者字符串数组,通常是还未经过加工处理的字符串(描述的不好,就是纯字符,不带dom标签)。那获取结果之后,渲染dom,在vue 或者 react 中,大多数时候都直接用{{}} 渲染了,那怎么样才能实现像图中的那样的关键词高亮呢? 在渲染之前,字符串也没办法带上标记啊。
{{}}
str.replace
你想渲染用户输入的文本为dom节点. 必须 先替换 < 这种字符防止 跨站脚本攻击. 然后你可以在渲染之前 replace 你的特定字符,并在前后加上dom标签. 根据 vue 或者 react 自己的方法渲染节点. 框架默认都是输出为普通字符,不渲染标签
<
replace
vue
react
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
str.replace
你想渲染用户输入的文本为dom节点. 必须 先替换
<这种字符防止 跨站脚本攻击. 然后你可以在渲染之前replace你的特定字符,并在前后加上dom标签. 根据vue或者react自己的方法渲染节点. 框架默认都是输出为普通字符,不渲染标签