Я борюсь с Reactjs и рендерингом компонентов.Использование серверных HTML-шаблонов с ReactJS
В основном у меня есть регулярные html-шаблоны на сервере, и я пытаюсь использовать их как JSX-компоненты с React. В противном случае он работает нормально, но я не могу запустить события, например: this.handleПодтвердить.
Как визуализировать загруженный шаблон как элемент React?
//Template /index.html
<form onSubmit={this.handleSubmit}>
<input type="text">
<input type="submit"
</form>
//Template loader
var App = React.createClass({
componentDidMount: function() {
this.updateContent();
},
updateContent: function(){
/**
* Loads the template from the server and sets
* a new state
*/
var url = this.props.source.slice(1);
$.get(url, function(result) {
var html = result;
if (this.isMounted()) {
this.setState({
content: html
});
}
}.bind(this));
},
handleSubmit: function(){
console.log('Submit fired');
}
render: function() {
var converter = new HTMLtoJSX({createClass: false});
var jsx = '/** @jsx React.DOM */ ' + converter.convert(this.state.content);
return (
<div>
{JSXTransformer.exec(jsx)}
</div>
);
});
React.render(
<App source="#/index.html" />,
mountPoint
);
Почему? Включите пример одного из этих шаблонов, пожалуйста. – FakeRainBrigand
Существует пример файла шаблона в самой верхней части кода. –