Часть формы PropTypes - PullRequest
       12

Часть формы PropTypes

0 голосов
/ 26 мая 2019

У меня есть что-то похожее на это:

export const LocalesModel = PropTypes.shape({
  defaultLocale: PropTypes.string.isRequired,
  supportedLanguages: PropTypes.arrayOf(PropTypes.string).isRequired,
  messages: MessageModel,
});

В компоненте я получаю эту модель следующим образом:

import { LocalesModel } from '...';

const Component = () => ...

Component.propTypes = {
   supportedLanguages: ???
}

Я хочу иметь возможность сделать что-то вроде:

Component.propTypes = {
   supportedLanguages: LocalesModel.supportedLanguages
}

но я знаю, что это не работает. Есть ли способ получить свойство формы PropTypes - или мне просто нужно извлечь supportedLanguages из LocalesModel?

1 Ответ

0 голосов
/ 26 мая 2019

Вы можете экспортировать форму без PropTypes.shape:

export const LocalesModel = {
  defaultLocale: PropTypes.string.isRequired,
  supportedLanguages: PropTypes.arrayOf(PropTypes.string).isRequired,
  messages: MessageModel,
};

А затем добавьте PropTypes.shape там, где вы его используете:

Component.propTypes = {
 supportedLanguages: PropTypes.shape(LocalesModel.supportedLanguages)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...