【发布时间】:2019-09-30 15:42:15
【问题描述】:
我正在开发一个 React 应用程序,用户可以在其中选择文本并添加简单的注释。此外,之前的注释将通过 JSON 从 API 加载。
注释 JSON 看起来像这样:
"annotations": [
{
"id": 1,
"start": 12,
"end": 67,
"text": "Annotation Text"
}
]
其中start 和end 是HTML 中的字符位置,也是通过JSON 和dangerouslySetInnerHTML 加载的。因此,当添加新的注解时,它们的字符位置需要在注解保存回 API 时匹配。
理想情况下,注释也会在 UI 中突出显示。
关于如何做到这一点的任何建议? AnnotatorJS 似乎维护得不是很好,所以我对在生产项目中使用它感到紧张。
谢谢!
【问题讨论】:
-
你不能渲染出跨度(或其他元素)内的那些字符并添加你喜欢的任何样式吗?如果可能,我建议不要使用
dangerouslySetInnerHTML并使用 jsx 元素。
标签: javascript reactjs highlight