Как говорит документация:
Ключевое слово
super используется для вызова функций, принадлежащих родителю объекта.
Часто встречаю особенно в React коде super в конструкторах. Хотя вот в js редко встречалось мне это слово. Почему так? Почему в js часто конструктор без него, а в React он повсюду там где есть конструктор?
И еще вопрос вот есть пример кода где по нажатии на кнопку открывается новое окошко. Какую функцию здесь вызывает super? Какой здесь родитель которому предналежит функция и какой обьект(ребенок)? И что было бы, если бы не было super? ну то есть я понимаю что ошибка была бы, но если бы его не было как по другому пришлось бы написать код?
import React, { Component } from 'react';
import { Collapse, Button, CardBody, Card } from 'reactstrap';
class Example extends Component {
constructor(props) {
super(props);
this.toggle = this.toggle.bind(this);
this.state = { collapse: false };
}
toggle() {
this.setState(state => ({ collapse: !state.collapse }));
}
render() {
return (
<div>
<Button color="primary" onClick={this.toggle} style={{ marginBottom: '1rem' }}>Toggle</Button>
<Collapse isOpen={this.state.collapse}>
<Card>
<CardBody>
Anim pariatur cliche reprehenderit,
enim eiusmod high life accusamus terry richardson ad squid. Nihil
anim keffiyeh helvetica, craft beer labore wes anderson cred
nesciunt sapiente ea proident.
</CardBody>
</Card>
</Collapse>
</div>
);
}
}
export default Example;
ссылка на источник кода:
reactstrap.github.io/components/collapse