【发布时间】:2018-08-31 10:49:46
【问题描述】:
我开发了一个显示错误的反应应用程序
[React Intl] 缺少区域设置的区域设置数据:“未定义”。使用默认语言环境:“en”作为后备。
我的 app.js
import{ IntlProvider,addLocaleData } from "react-intl";
import messages from "./messages";
import{locale} from "./reducers/locale";
import {setLocale} from "./actions/locale";
class App extends React.Component {
render() {
const { location, isAuthenticated, loaded, lang } = this.props;
console.log(lang);//undefined in console
return (
<IntlProvider key={ lang } locale={lang} messages={messages}>
</IntlProvider>
);
}
【问题讨论】:
-
如果你想用后备渲染你可以做类似
key={ lang || 'en'} locale={lang || 'en'}的事情。如果您不想在 lang 未定义的情况下渲染,则返回 null -
感谢@Kunukn 我试过了,但它不会工作
标签: reactjs react-redux