问题答案 12026年5月26日 03:34
如何在 `react-i18next` 的本地化文本中使用 HTML 标签?
在使用 库进行国际化时,有时我们需要在翻译文本中嵌入 HTML 标签来实现一些格式化。例如,可能需要在一段文本中对某些单词进行强调,或者添加链接等。 提供了几种方法来实现这一点,确保既可以进行国际化又可以安全地渲染 HTML。方法1: 使用 组件组件是 提供的一个方式,用于处理复杂的翻译场景,如插入 HTML 标签或组件。使用 组件时,你可以直接在你的翻译资源文件中加入 HTML 标签。假设你有如下的翻译资源:然后在 React 组件中这样使用:在这个例子中, 组件会安全地渲染 HTML,并保持翻译文本中的 HTML 结构。方法2: 使用如果你不想使用 组件,另一个选择是利用 React 的 属性。这种方法应当谨慎使用,因为它可能会导致 XSS(跨站脚本攻击)安全问题。首先,确保你的翻译字符串是安全的,然后这样使用:安全注意事项当使用 时,务必确保翻译字符串来源是安全的,避免 XSS 攻击。尽量使用 组件,因为它提供了更安全、更灵活的方式来处理 HTML 和组件。通过上述方法,你可以在 中灵活地使用 HTML 标签,同时确保应用的国际化和多语言支持。