错误:在Expo React Native应用程序中找不到本机模块“ExpoLocalization”,js引擎:hermes

问题描述 投票:0回答:1

我正在尝试为 Expo React Native 应用程序实现本地化。 我的 i18n.js 文件如下所示:

import { getLocales } from 'expo-localization';
import { I18n } from 'i18n-js';

// Set the key-value pairs for the different languages you want to support.
const i18n = new I18n({
  en: { welcome: 'Hello' },
  lt: { welcome: 'Labas' },
});

// Set the locale once at the beginning of your app.
i18n.locale = getLocales()[0].languageCode;

console.log(i18n.t('welcome'));

我做到了

npm install expo-localization
npx expo install i18n-js

我启动了

npx expo start

我收到错误:

Cannot find native module 'ExpoLocalization', js engine: hermes

package-lock.json 中我的版本:

    "i18n-js": "^4.4.3",

    "expo-localization": "~15.0.3",

我还尝试在app.json中设置jsEngine:

  "expo": {
    "jsEngine": "hermes",

这些都没有真正帮助。有什么建议吗?

android reactjs react-native expo localization
1个回答
0
投票

错误提到了 “ExpoLocalization”,但正确的包名称是 expo-localization。显然存在差异,这可能是导致问题的原因。我们需要有关错误的更多详细信息才能确定。

同时,检查您的 app.json 以确保它包含该插件:

 {
  "expo": {
    "plugins": ["expo-localization"]
  }
}

尝试删除node_modules和package-lock.json,可能你使用了npm和yarn。

© www.soinside.com 2019 - 2024. All rights reserved.