Javascript React Native Expo-.reduce()延迟导入捆绑包配置
我正在尝试重构以下代码Javascript React Native Expo-.reduce()延迟导入捆绑包配置,javascript,reactjs,react-native,ecmascript-6,Javascript,Reactjs,React Native,Ecmascript 6,我正在尝试重构以下代码 export const translationGetters = { spanish: () => require("./assets/languages/es/translations.json"), english: () => require("./assets/languages/en/translations.json"), } 像这样 const APP_LANGUAGES = [{ lo
export const translationGetters = {
spanish: () => require("./assets/languages/es/translations.json"),
english: () => require("./assets/languages/en/translations.json"),
}
像这样
const APP_LANGUAGES = [{ locale: "es", ... }, { locale: "en", ... }, ...];
export const translationGetters = APP_LANGUAGES.reduce(
(o, { locale }) => ({
...o,
[locale]: () => require(`./assets/languages/${locale}/translations.json`), // lazy
}),
{}
);
但此代码对于默认捆绑包配置无效。为什么?我怎样才能解决这个问题
谢谢。您的
APP\u语言
还需要包含translationGetters
键的全名
const APP_LANGUAGES = [
{ locale: "es", lang: 'spanish' },
{ locale: "en", lang: 'english' }
];
export const translationGetters = APP_LANGUAGES.reduce(
(o, { locale, lang }) => ({
...o,
[lang]: () => require(`./assets/languages/${locale}/translations.json`), // lazy
}),
{}
);
你说的无效是什么意思?您是否收到错误?@derpirscher“调用无效。无法生成捆绑包。”这可能是捆绑程序的问题。你正在建造和捆绑什么?@ MyOncCKSPION世博会它的价值,我会考虑你原来的代码好多了。