У меня есть компонент Table, который возвращает некоторые элементы jsx и содержит некоторые функции.Я уже протестировал элементы jsx в компоненте, теперь я хочу попробовать функции.
Функции объявлены как:
const fn = prop => {
return (
<div>Something</div>
);
};
Я пытался получить к ним доступ черезэкземпляр смонтированного компонента, но я получаю ошибки:
TypeError: Невозможно прочитать свойство 'fn' с нулевым значением And: TypeError: component.fn не является функцией
Первая ошибка возникает, когда я вызываю функцию renderDate следующим образом:
const date = moment('01/01/2019', "DD/MM/YYYY");
const row = {
value: date
}
component = mount(getComponent())
component.instance().renderDate(row)
И второй результат возникает, когда я вызываю функцию renderDate без instance () компонента, например:
const date = moment('01/01/2019', "DD/MM/YYYY");
const row = {
value: date
}
component = mount(getComponent())
component.renderDate(row)
И функция renderDate внутри компонента:
const renderDate = row => {
return (
<div>
{row.value}
</div>
);
};
Я бы ожидал выполнить эту функцию, но вместо этого она не обнаруживает существование функций, объявленных как это.
У кого-нибудь есть идеи о том, как вызывать функции, как показано в Jest и Enzyme?Я искал в документации ферментов о вызове функций в компонентах, но ни один из примеров не работал для меня.
Заранее спасибо!