我正在研究一个在服务器上渲染的应用程序,然后某些组件在客户端上被水化。
到目前为止很好,但是我对reactItnl
有疑问。当我hydrate
客户端组件时,一切正常,除了reactIntl
缺少messages
。
查看chrome开发工具会告诉我,IntlProvider
具有正确的道具(locale
,defaultLocale
和messages
),但是当我查看{{ 1}},injectIntl
为空...(但messages
locale
具有正确的值)
客户端脚本概述:
defaultLocale
IntlProvider:
import React from 'react'
import { hydrate } from 'react-dom'
import Component from 'Component'
// IntlProvider HOC (see below)
import IntlProvider from 'utils/IntlProvider'
const ComponentWithIntl = IntlProvider(Component)
const wrapper = document.querySelector(wrapper)
hydrate(<ComponentWithIntl locale="de-DE" />, wrapper)