2016-06-16 3 views

ответ

4

Вы не можете. Они необходимы для того, чтобы React выполнял свою работу, насколько известно, как удалить/заменить элементы в DOM. Это улучшение по сравнению с предыдущим способом. Реакт делал то, что везде было атрибутами data-reactid.

+0

Хотя это правда, что React нуждается в нем для динамического контента, статический контент - это еще одна история: https://facebook.github.io/react/docs/react-dom-server.html#rendertostaticmarkup –

0

Если вы поместите каждое слово и/или пробел в тег, комментарии не будут отображаться. Не идеально подходит для больших возвратов, но если по какой-то причине вы абсолютно не можете иметь эти комментарии там, это (не идеальное) решение.

Просто просмотрите код в веб-инспекторе, вы увидите разницу.

https://jsfiddle.net/69z2wepo/73674/

нет комментариев

return (<div><span>Hello</span><span> </span><span>{this.props.name}</span></div>) 

комментарии

return (<div>Hello {this.props.name}</div>) 
1

ReactDOMServer.renderToStaticMarkup делает именно это.

С этой страницы:

Подобно renderToString, кроме этого, не создает дополнительные DOM атрибуты, такие как дата-reactid, что React использует внутренне. Это полезно, если вы хотите использовать React как простой статический генератор страниц, так как удаление лишних атрибутов может сэкономить массу байтов.

Смежные вопросы