Я хочу реализовать следующие функциональные возможности https://facebook.github.io/react/tips/expose-component-functions.html, но я использую ES6 синтаксисExpose функции компонентов в ES6
@controllable(['center', 'zoom', 'hoverKey', 'clickKey', 'selectedCountry'])
export default class ContactMapView extends Component {
constructor(props) {
super(props);
this.initialFunc = this.initialFunc.bind(this);
}
initialFunc() { … }
Когда я называю initialFunc в моем родительском классе
componentDidMount() {
MapStore.addChangeListener(this._onChange.bind(this));
this.refs['mapView'].initialFunc();
};
я получаю следующее сообщение об ошибке:
TypeError: this.refs.mapView.initialFunc is not a function
Любые идеи, как я могу запустить функцию моего дочернего компонента?
Я просто хочу, чтобы мой ребенок ждать родительский компонент для установки. – Tomasz
Пожалуйста, покажите нам метод рендеринга для родителя. –
Ребенок не будет монтироваться до тех пор, пока не будет установлен родительский элемент, поэтому в зависимости от того, насколько тщательно вам нужно управлять заказом, вы можете просто использовать 'componentDidMount' в дочернем элементе. –