i18nPlugin
i18nPlugin copied to clipboard
Problems with "Extract i18n key" using react-i18n
Given the following example, I have encountered two problems when using the "Extract i18n key" feature:
const Component = () => {
const {t} = useTranslation();
return (<Text value="My string" />)
}
- If the string is not inside curly braces, it will throw an error:
kotlin.KotlinNullPointerException
at com.eny.i18n.plugin.language.jsx.JsxTranslationExtractor.text(JsxLanguageFactory.kt:69)
at com.eny.i18n.plugin.ide.actions.ExtractI18nIntentionAction.doInvoke(ExtractI18nIntentionAction.kt:52)
at com.eny.i18n.plugin.ide.actions.ExtractI18nIntentionAction.access$doInvoke(ExtractI18nIntentionAction.kt:24)
at com.eny.i18n.plugin.ide.actions.ExtractI18nIntentionAction$invoke$1.run(ExtractI18nIntentionAction.kt:36)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:214)
- If the string is inside braces, it will extract the key. However the result use the
i18n.t
function instead of the existingt
function from the translation hook. It will look like:
<Text value={i18n.t('key')} />
@gpsfl have you checked if the problem still remains in 2.6.1?