Автор оригинала: Cem Eygi.
React.js – один из наиболее широко используемых библиотек JavaScript, которые должен знать каждый интерфейс разработчика. Понимание того, какие реквизиты и государства являются и различия между ними – это большой шаг к реакции на обучение.
В этом посте в блоге я объясню, что такое реквизит и штат, и я также уточню некоторые из самых задаваемых вопросов о них:
- Что такое реквизит?
- Как вы передаете данные с реквизитами?
- Что такое состояние?
- Как вы обновляете состояние компонента?
- Что происходит, когда государственные изменения?
- Могу ли я использовать состояние в каждом компонент?
- Каковы различия между реквизитами и государством?
Что такое реквизит?
Оприфры короткие для свойств, и они используются для передачи данных между компонентами реагирования. Реагистрационные данные между компонентами являются однонаправленные (только от родителя к ребенку).
Как вы передаете данные с реквизитами?
Вот пример того, как данные могут быть переданы с помощью реквизитов:
class ParentComponent extends Component {
render() {
return (
);
}
}
const ChildComponent = (props) => {
return {props.name}
;
};Во-первых, нам нужно определить/получить некоторые данные из родительского компонента и присваивать его атрибуту «опоры для» дочернего компонента.
«Имя» – это определяемая опора здесь и содержит текстовые данные. Тогда мы можем передавать данные с поддержкой, как мы даем аргумент к функции:
const ChildComponent = (props) => {
// statements
};И, наконец, мы используем точечную обозначение для доступа к данным оприз и визуализации:
return{props.name}
;
Вы также можете посмотреть мое видео, чтобы увидеть, как использовать реквизиты:
Что такое состояние?
React имеет еще один специальный встроенный объект, называемый состоянием, который позволяет компонентам создавать и управлять своими собственными данными. Таким образом, в отличие от реквизитов, компоненты не могут передавать данные с состоянием, но они могут создавать и управлять его внутренне.
Вот пример, показывающий, как использовать состояние:
class Test extends React.Component {
constructor() {
this.state = {
id: 1,
name: "test"
};
}
render() {
return (
{this.state.id}
{this.state.name}
);
}
}Как вы обновляете состояние компонента?
Состояние не должно быть изменено напрямую, но он может быть изменен со специальным методом, называемым setState () Отказ
this.state.id = "2020"; // wrong
this.setState({ // correct
id: "2020"
});Что происходит, когда государственные изменения?
Хорошо, почему мы должны использовать setState () ? Почему нам даже нужен сам объект штата? Если вы задаете эти вопросы, не волнуйтесь – вы скоро поймете штат:) Позвольте мне ответить.
Изменение состояния происходит на основе пользовательского ввода, вызвании события и так далее. Кроме того, компоненты React (с состоянием) отображаются на основе данных в состоянии. Состояние содержит первоначальную информацию.
Поэтому, когда государственные изменения реагируют и немедленно повторно рендерируют Дом – Не весь дом, а только компонент с обновленным состоянием. Это одна из причин, почему реагируют быстро.
И как реагировать получать уведомление? Вы догадались: с setState () Отказ setState () Метод вызывает процесс повторного рендеринга для обновленных частей. Реагирование получает в курсе, знает, какие части (ы) изменять, и делает его быстро без рендеринга всего дома.
Таким образом, существует 2 важных пункта, которые нам нужно обратить внимание при использовании штата:
- Состояние не должно быть изменено напрямую –
setState ()должен быть использован - Состояние влияет на производительность вашего приложения, и поэтому его не следует использовать без необходимости
Могу ли я использовать состояние в каждом компонент?
Еще один важный вопрос, который вы можете спросить о штате, – это то, что именно мы можем его использовать. В первые дни государство может быть использовано только в Компоненты класса , не в функциональных компонентах.
Вот почему функциональные компоненты были также известны как компоненты без гражданства. Однако после введения Реактивные крючки Теперь состояние теперь можно использовать как в классе, так и в функциональных компонентах.
Если ваш проект не использует React Cloots, вы можете использовать только состояние в классных компонентах.
Каковы различия между реквизитами и государством?
Наконец, давайте повторимся и посмотрим основные различия между реквизитами и государством:
- Компоненты получают данные снаружи с реквизитами, тогда как они могут создавать и управлять своими собственными данными с состоянием
- Оприфры используются для передачи данных, тогда как состояние предназначено для управления данными
- Данные из реквизитов являются только для чтения, и не могут быть изменены компонентом, который получает его извне
- Данные состояния могут быть изменены по своему компоненту, но является частным (не может быть доступен извне)
- Реквизиты могут быть переданы только из родительского компонента к ребенку (однонаправленный поток)
- Модифицирующее состояние должно произойти с
setState ()метод
React.js – это одно сегодняшние из наиболее широко используемых библиотек JavaScript, которую должен знать каждый интерфейс разработчика.
Я надеюсь, что эта статья поможет вам понять реквизит и состояние. Есть также другие важные вещи, чтобы покрыть реакцию, и я буду писать о них позже в моих следующих статьях.
Если вы хотите узнать больше о веб-разработке, не стесняйтесь Следуй за мной на YouTube Действительно
Спасибо за чтение!
Оригинал: “https://www.freecodecamp.org/news/react-js-for-beginners-props-state-explained/”