Поскольку вы уже собрали и скомпоновали свой компонент, вам нужно сделать только три вещи:
Добавить связанный JavaScript (вывод Webpack) в качестве тега скрипта на любой страницеВы хотите, чтобы компонент был включен (предпочтительно в нижней части <body>
).
Пример: <script src="wp-content/react/bundle.js"></script>
Добавьте корневой элемент, с которым React будет связываться ста же страница.
Пример: <div id="react-root"></div>
В вашем файле компонента отобразите компонент в корневой элемент.
Пример: ReactDOM.render(<Component />, document.getElementById('react-root'));
Чтобы динамически отображать и скрывать компонент React на основе чего-либо, происходящего вне файла компонента, необходимо создать способ подключения внешнего (DOM) к внутреннему (React).Самый простой способ сделать это с помощью глобальной переменной, прикрепленной к window
.
. В своем компоненте React добавьте метод componentWillMount
, который определяет глобальную переменную:
componentWillMount() {
window.showComponent = (option) => {
// "option" should be true or false
this.setState({ display: option });
}
}
На основедля значения, переданного setState
выше, вам необходимо добавить свойство display
в состояние вашего компонента:
constructor(props) {
super(props);
this.state = {
display: false
};
}
Теперь, чтобы компонент отображался или скрывался на основе значения this.state.display
внутри render()
метода:
render() {
if (this.state.display) {
return (
...
)
} else {
return null;
}
}
Все, что осталось сделать, это использовать showComponent(true)
или showComponent(false)
в вашем коде, который обрабатывает форму.