как безопасно реализовать аренду в распределенной системе

Опоры просто сокращают свойства. Опоры - это то, как компоненты общаются друг с другом. Если вы вообще знакомы с React, вы должны знать, что реквизит протекает вниз от родительского компонента.

Также существует случай, когда вы можете иметь реквизиты по умолчанию, чтобы реквизиты были установлены, даже если родительский компонент не пропускает реквизит вниз.

Вот почему люди ссылаются на React как на однонаправленный поток данных. Это немного касается вашей головы, и я, вероятно, буду писать об этом позже, но на данный момент просто помню: данные передаются от родителя к ребенку. Опоры неизменны (фантастическое слово, чтобы оно не менялось)

Итак, мы счастливы. Компоненты получают данные от родителя. Все отсортировано, правда?

Ну, не совсем. Что происходит, когда компонент получает данные от кого-то другого, кроме родителя? Что делать, если пользователь вводит данные непосредственно в компонент?

Ну, вот почему у нас есть состояние.

STATE

Опоры не должны меняться, поэтому состояние поднимается вверх. Обычно компоненты не имеют состояния и поэтому называются апатридами. Компонент, использующий состояние, известен как stateful. Не стесняйтесь бросать этот маленький лакомый кусочек на вечеринках и смотреть, как люди уходят от вас.

Таким образом, состояние используется, чтобы компонент мог отслеживать информацию между любыми рендерами, которые он делает. Когда вы устанавливаетеState, он обновляет объект состояния, а затем повторно отображает компонент. Это супер круто, потому что это означает, что «Реакт» заботится о тяжелой работе и невероятно быстро.

. В качестве небольшого примера состояния, вот фрагмент из строки поиска (стоит проверить этот курс, если вы хотите чтобы узнать больше о React)

Class SearchBar extends Component {
 constructor(props) {
  super(props);
this.state = { term: '' };
 }
render() {
  return (
   <div className="search-bar">
   <input 
   value={this.state.term}
   onChange={event => this.onInputChange(event.target.value)} />
   </div>
   );
 }
onInputChange(term) {
  this.setState({term});
  this.props.onSearchTermChange(term);
 }
}

РЕЗЮМЕ

Реквизиты и государство выполняют похожие вещи, но используются по-разному. Большинство ваших компонентов, вероятно, будут апатридом.

Опоры используются для передачи данных от родителя к ребенку или самому компоненту. Они неизменяемы и, следовательно, не будут изменены.

Состояние используется для изменяемых данных или данных, которые будут меняться. Это особенно полезно для ввода пользователем. Например, подумайте о барах поиска. Пользователь будет вводить данные, и это обновит то, что они видят.

0
задан zhihuifan 15 January 2019 в 16:26
поделиться