Danh mụcThẻBài viết

admin

I'm a Full-stack developer

Thẻ

Linked List
Data Structure
Chat GPT
Design Pattern
Microservices
API
AWS CDK
ReactJS
AWS Lightsail
Flutter Mobile
Part 1: React Props and State
Ngày đăng: 18/06/2023

In this article, I will explain what is Props and State in React, and what is different between them. Before learning ReactJS, we should understand Props and State. This is basic for a newbie.


What is State in React?


State is an object that holds some information in a component. The important point is whenever state object is changed, the component is re-rendering.

Let's take an example. We have a DownloadButton component, The label default is Download. Used useState hook to change the label to Processing when the user clicked.


import React, { useState } from 'react';

function DownloadButton() {
  const [btnLabel, setBtnLabel] = useState('Download');

  const download = () => {
    setBtnLabel('Processing');
  }

  return (
    <div>
      <button onClick={download}>{btnLabel}</button>
    </div>
  );
}


What are Props in React?


Props are objects or values that are passed into a component. The main point is to pass data to your component and trigger State changes.

For example, we have 2 components that are ActionSession and DownloadButton. The DownloadButton component is children of ActionSession, it is received a value from the parent which is fileType. Then, the button label is changed after the fileType value is changed.


import React, { useState } from 'react';

interface DownloadButtonProps {
  fileType: 'csv' | 'excel';
}

function DownloadButton({ fileType }: DownloadButtonProps) {
  const [btnLabel, setBtnLabel] = useState('Download');

  const download = () => {
    setBtnLabel('Processing');
  }

  return (
    <div>
      <button onClick={download}>{btnLabel} - {fileType}</button>
    </div>
  );
}

function ActionSession() {
  return <DownloadButton fileType='csv'/>
}


What is different between Props and State?

Both Props and State are used to manage the data of a component but they are used in different ways and have different characteristics.


Props:

  • The data is passed from the parent component.
  • Can be used with State and functional components.
  • Cannot be modified.
  • Read-only.


State:

  • The Data is passed within the component only.
  • Can be modified.
  • Both read and write.


Thank you for reading!


Next articles:
PART 2: THE HOOKS ARE USED POPULARLY IN REACT
PART 3: REACT FRAGMENTS
Đề xuất

Writing a Data Transformation Pipeline Using Go
admin20/03/2024

Writing a Data Transformation Pipeline Using Go
In this article, I will show how to implement data processing using the Go programing language with a simple tutorial.
TypeScript Design Pattern - Singleton
admin07/08/2023

TypeScript Design Pattern - Singleton
The singleton ensures only a single install is created in a class and provides a method to access this instance everywhere in a codebase.
TypeScript Design Pattern - Bridge
admin08/08/2023

TypeScript Design Pattern - Bridge
Decouple an abstraction from its implementation so that the two can vary independently.
Mới nhất

TypeScript Design Pattern - Adapter
admin08/08/2023

TypeScript Design Pattern - Adapter
This design pattern acts as a bridge between two different interfaces.
Extract data using web scraping with Python
admin14/03/2024

Extract data using web scraping with Python
A beginner’s guide to learn web scraping with Python!
TypeScript Design Pattern - Proxy
admin11/08/2023

TypeScript Design Pattern - Proxy
Provide a surrogate or placeholder for another object to control access to it.
Đinh Thành Công Blog

My website, where I write blogs on a variety of topics and where I have some experiments with new technologies.

hotlinelinkedinskypezalofacebook
DMCA.com Protection Status
Góp ý
Họ & Tên
Số điện thoại
Email
Nội dung
Tải ứng dụng
hotline

copyright © 2023 - AGAPIFA

Privacy
Term
About