Я создаю простой статический механизм просмотра с использованием React с целью рендеринга статической разметки HTML и создания js файла, заполненного этими DOM-событиями компонентов (onClick и т.д.).
То, как я делаю первую часть, - это указать указанный JSX файл, который выглядит, например, следующим образом:
import React from 'React';
export default class Test extends React.Component {
clicked() {
alert('Clicked the header!');
}
render() {
return (
<html>
<head>
<title>{this.props.title}</title>
</head>
<body>
<h1 onClick={this.clicked}>click me!!!</h1>
</body>
</html>
);
}
}
Затем я передаю JSX файл через NodeJS-бэкэнд следующим образом:
let view = require('path-to-the-jsx-file');
view = view.default || view;
const ViewElement = React.createFactory(view);
let output = ReactDOMServer.renderToStaticMarkup(ViewElement(props));
Он отлично работает для статического HTML. Но мне интересно, есть ли способ получить доступ ко всем компонентам, используемым в JSX файле в массиве или что-то еще, что я мог бы использовать для проверки того, какие события связаны и к каким обработчикам.
Итак, в этом примере, можно ли получить <h1>
-tag onClick
-handler? Возможно ли это сделать?