Я создал небольшую панель инструментов ReactJS с помощью SocketIO для живых обновлений. Несмотря на то, что у меня есть обновление панели мониторинга, мне кажется, что я не совсем уверен, правильно ли я сделал это.
Больше всего меня беспокоит реквизит в getInitialState как анти-шаблон. Я создал панель мониторинга, которая получает прямые обновления с сервера, не требуя взаимодействия с пользователем, не загружая страницу. Из того, что я прочитал, this.state должен содержать вещи, которые будут определять, должен ли компонент повторно отображаться, и this.props.... Я еще не знаю.
Однако, когда вы изначально звоните React.render(<MyComponent />, ...), вы можете передавать только реквизиты. В моем случае я получаю все данные с сервера, поэтому исходные реквизиты в любом случае оказываются в this.state. Итак, у всех моих компонентов есть что-то вроде этого:
getInitialState: function() {
    return {
        progress: this.props.progress,
        latest_update: this.props.latest_update,
        nearest_center: this.props.nearest_center
    }
}
Что, если я неправильно истолковал вышеупомянутое сообщение в блоге, является анти-шаблоном. Но я не вижу другого способа впрыскивать государство в Компонент, и я не понимаю, почему это анти-шаблон, если я не переместлю все мои реквизиты, чтобы добавить initial к ним. Во всяком случае, я чувствую, что это анти-шаблон, потому что теперь мне нужно отслеживать больше переменных, чем раньше (те, которые были добавлены с помощью initial и без них).