Я начал работать над проектом и унаследовал большое количество ReactJS, которое я пытаюсь разобраться и лучше понять. В настоящее время существует небольшая проблема, которую я пытаюсь исправить в приложении, над которым я работаю.ReactJS создает дополнительные промежутки в HTML
Вот код для визуализации:
render: function() {
return (
<div className="finish-content-container">
<div className='finish-instructions'>
<span>
{this.props.finishInfo.startpage.instructions || ""}
</span>
</div>
{
this.props.userData.score && !this.props.finishInfo.finishpage.hideScore ?
<div className="finish-results">
<span>{"Your Score: " + (this.props.userData.score || "")}</span>
</div> : ""
}
{
this.props.finishInfo.finishpage && this.props.finishInfo.finishpage.graph ?
<div className="finish-graph">
<div dangerouslySetInnerHTML={{__html: processStoredGraph(this.props.finishInfo.finishpage.graph, 250, 450)}}></div>
</div> : ""
}
{
this.props.userData.score && this.props.finishInfo.finishpage && this.props.finishInfo.finishpage.feedback ?
<div className='finish-results-feedback'>
{this._getConditionalText(this.props.finishInfo.finishpage.feedback, this.props.userData.score)}
</div> : ""
}
<div className="finish-content" dangerouslySetInnerHTML={{__html: this.props.finishInfo.startpage.content}}></div>
<div className="finish-button">
<span onClick={this.props.onClick} className="btn finish">REPLAY</span>
</div>
</div>
);
},
Вот что происходит: вся логика, кажется, работает хорошо, но это создает добавление охватывает в HTML и эти пролеты занимают недвижимость на страницы, даже если у них нет данных.
Любые мысли? Я могу включить вывод HTML на странице, если это вообще полезно.
В этом реактиве есть некоторые странные вещи; 'dangerouslySetInnerHTML' кажется, что данные не обрабатываются способом React, и вы генерируете много внутри оператора return вместо того, чтобы готовить контент, а затем просто выполняете' return
Согласен. Я унаследовал этот код, и я пытаюсь его лучше понять. Я согласен, что это не реакция. У вас есть предложения о том, как я могу начать перестраивать этот код, чтобы сделать его более пригодным для использования? – breadstickguy
Я бы начал с первого объединения содержимого, которое вам нравится 'function render() {content = []; content.push (this.formThing (this.props ....)); ...; return