Подтвердить что ты не робот

Почему необходимо активизировать компоненты в реагировании?

Итак, когда вы объявляете компонент в реакции с строчной первой буквой, он не появляется, не вызывая ошибки. Когда вы заглаживаете имя компонента, он работает.

Что это такое реализовано? Чтобы избежать столкновения с существующими элементами html, или это ошибка?

var test = React.createClass({
  render: function() {
    return (
      <div>Test</div>
    );
  }
});

var Screen = React.createClass({
  render: function() {
    return (
      <div>
        <test/>
      </div>
    );
  }
});

Когда я меняю test на test, он работает:

var test = React.createClass({
  render: function() {
    return (
      <div>Test</div>
    );
  }
});

var Screen = React.createClass({
  render: function() {
    return (
      <div>
        <test/>
      </div>
    );
  }
});
4b9b3361

Ответ 1

Из некоторых отредактированных заметок

Соглашение о названии тега JSX (имена нижнего регистра относятся к встроенным компонентам, заглавные имена относятся к пользовательским компонентам).

Ответ 2

Реакция на самом деле чувствительна к регистру.

Здесь есть соответствующая проблема github, где кто-то задает один и тот же вопрос. https://github.com/reactjs/React.NET/issues/76