在 i18next 中转义特殊字符
Escape special characters in i18next
所以我有这个变量,它将包含在类似“<123456789>”的内容中
然后我有这个:
var vocab = mm('responses.positive', {
lngs:LANG,
target: User.tag,
amount: r * multiplier,
icon: iconFile
})
这将使 vocab
return Message <123456789>
我能做些什么来避免它以这种方式解析符号吗?
我试过在字符串中转义 return,但它不起作用。即使它确实有效,我也有一个问题,我有一个 >
发生在 内部 变量。
一个不太优雅的解决方案是编辑字符串以转义每个字符,但我需要确切地知道我收到了哪些字符,这使得该解决方案不可行。
我已经在 HTML 中看到了一些解决方案,但由于我在这里没有使用任何 HTML 接口,因此解决方案必须在 JS 本身上
将escapeValue
设为假:
i18n.t("key", { 'interpolation': {'escapeValue': false} })
另一种关闭转义的方法是将 -
放在键前:
"keyUnescaped": "dangerous {{- myVar}}"
更多信息:https://www.i18next.com/translation-function/interpolation.
所以我有这个变量,它将包含在类似“<123456789>”的内容中
然后我有这个:
var vocab = mm('responses.positive', {
lngs:LANG,
target: User.tag,
amount: r * multiplier,
icon: iconFile
})
这将使 vocab
return Message <123456789>
我能做些什么来避免它以这种方式解析符号吗?
我试过在字符串中转义 return,但它不起作用。即使它确实有效,我也有一个问题,我有一个 >
发生在 内部 变量。
一个不太优雅的解决方案是编辑字符串以转义每个字符,但我需要确切地知道我收到了哪些字符,这使得该解决方案不可行。
我已经在 HTML 中看到了一些解决方案,但由于我在这里没有使用任何 HTML 接口,因此解决方案必须在 JS 本身上
将escapeValue
设为假:
i18n.t("key", { 'interpolation': {'escapeValue': false} })
另一种关闭转义的方法是将 -
放在键前:
"keyUnescaped": "dangerous {{- myVar}}"
更多信息:https://www.i18next.com/translation-function/interpolation.