Reactjs react intl FormattedMessage在注册reduxForm后未更新

Reactjs react intl FormattedMessage在注册reduxForm后未更新,reactjs,redux,react-redux,redux-form,react-intl,Reactjs,Redux,React Redux,Redux Form,React Intl,使用reduxForm注册组件后,react intlFormattedMessages在语言环境状态发生更改后不会更新: import React from 'react'; import { reduxForm } from 'react-redux-form'; import { Form } from 'reactstrap'; import { FormattedMessage } from 'react-intl'; const ExampleForm = ({ handleSub

使用
reduxForm
注册组件后,
react intl
FormattedMessages
在语言环境状态发生更改后不会更新:

import React from 'react';
import { reduxForm } from 'react-redux-form';
import { Form } from 'reactstrap';
import { FormattedMessage } from 'react-intl';

const ExampleForm = ({ handleSubmit }) => (
  <Form onSubmit={handleSubmit}>
    <h2>
      <FormattedMessage id="example.title" />
    </h2>
    ...
  </Form>
);

// When added reduxForm FormattedMessages are not displaying
// correct translation after language locale change through reducer
export default reduxForm({
  form: 'example',
})(ExampleForm);

// If I I am using without reduxForm everything works correctly
// export default ExampleForm;

需要
injectIntl
来包装
reduxForm

import { FormattedMessage, injectIntl } from 'react-intl';

export default injectIntl(reduxForm({
  form: 'example',
})(ExampleForm));
import { FormattedMessage, injectIntl } from 'react-intl';

export default injectIntl(reduxForm({
  form: 'example',
})(ExampleForm));