Запускаю тест и выдает ошибку
TypeError: Cannot set property 'background' of undefined
6 | componentDidMount() {
7 | const element = ReactDOM.findDOMNode(this)
> 8 | element.style.background = 'grey'
| ^
9 | }
Код компонента очень прост:
import React, { Component } from 'react';
import ReactDOM from 'react-dom'
class Link extends Component {
componentDidMount() {
const element = ReactDOM.findDOMNode(this)
element.style.background = 'grey'
}
render() {
return (
<div className="Link">
test link
</div>
);
}
}
export default Link;
Код теста:
import React from 'react';
import Link from './Link';
import renderer from 'react-test-renderer';
it('renders correctly', () => {
const tree = renderer
.create(<Link />)
.toJSON();
expect(tree).toMatchSnapshot();
});
Тестирую jest'ом как я понял он не может получить доступ к свойствам dom элемента, как это мне пофиксить кроме способа который указал ниже
element.style && (element.style.background = 'gray')
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости