Имея тестовый код:
it('componentDidUpdate should mount and change props', () => {
const onChange = jest.fn();
const wrapper = enzyme
.mount(
withTestTheme(
<JsonInput
onChange={onChange}
onValueChange={mockOnValueChange}
value={exampleJsonStringValidated}
/>),
);
expect(wrapper.instance().JsonInputRef).toBeTruthy;
});
Я получил:
Свойство 'JsonInputRef' не существует для типа 'Component <{}, {}, any>'. ts (2339)
Я хочу найти ref (текстовую область) и затем проверить свойства валидности, чтобы написать модульный тест, поэтому он мне нужен.
функция рендеринга:
render() {
const { height = '', onValueChange, ...restProps } = this.props;
return (
<StyledTextArea
ref={this.JsonInputRef}
{...restProps}
onChange={this.handleValueChange}
height={height}
/>
);
}
Аналогичный вопрос, но не работает: React / JestJS / Enzyme: Как проверить функцию ссылки?