react-intlを使用してReact Appにi18nを設定しようとしています。アプリはユニバーサルレンダリングされています(クライアントとサーバーの両方でノードを使用)。私が持っているものの基本的な例がこれです:ノードのローカル日付react-intl
import React, {Component} from 'react';
import ReactDOM from 'react-dom';
import {IntlProvider, FormattedDate} from 'react-intl';
class App extends Component {
const date = new Date();
render() {
return (
<div>
<FormattedDate value={date} />
</div>
);
}
}
ReactDOM.render(
<IntlProvider locale="en-GB">
<App />
</IntlProvider>,
document.getElementById('container')
);
サーバーレンダリングされたフォーマットされた日付は無効であるとチェックサムを反応させると、サーバーが離れてレンダリングスロー原因クライアントレンダリング日付と異なっています。ブラウザそれで
var date = new Date();
console.log(date.toLocaleDateString('en-GB'));
console.log(date.toLocaleDateString('en-US'));
:サーバーは、日付のEN-USロケールを送り返していると、ブラウザが
エンGB
をレンダリングしている私は、サーバーとブラウザの両方で、この小さなテストを試してみましたログ:"13/04/2016" "2016年4月13日"
私が期待するものであるが、ノードに、私は
"2016年4月13日"を取得します"4/13/2016"
これは、おそらく、サーバーが反応コードのレンダリングバージョンがブラウザのバージョンと異なるのでしょうか?
私はちょうどこれが問題であると推測しています。ノードはバージョンv5.4.1です
答えとしてマークする必要があります。ありがとう。 – Dimitry