⊗jsrtPmCpPr 81 of 112 menu

Props của Component trong React

Ở bài học trước, chúng ta đã hiển thị nhiều thể hiện sản phẩm:

function App() { return <div> <Product /> <Product /> <Product /> </div>; }

Hiện tại, mỗi lần gọi thẻ sản phẩm đều hiển thị ra màn hình cùng một nội dung. Bây giờ hãy làm cho mỗi sản phẩm trở nên độc đáo.

Giả sử, mỗi sản phẩm cần có tên và giá. Hãy làm sao để mỗi lần gọi thẻ sản phẩm hiển thị sản phẩm với tên và giá của riêng nó, được định dạng theo HTML chúng ta mong muốn.

Để làm điều này, chúng ta cần thực hiện một vài bước.

Đầu tiên, khi gọi thẻ sản phẩm, chúng ta sẽ viết hai thuộc tính vào thẻ này: thuộc tính name với tên sản phẩm và thuộc tính cost với giá, như thế này:

function App() { return <div> <Product name="product1" cost="100" /> <Product name="product2" cost="200" /> <Product name="product3" cost="300" /> </div>; }

Tên và giá trị của các thuộc tính này sẽ được truyền vào dưới dạng một đối tượng ở tham số đầu tiên của hàm tạo component Product của chúng ta:

function Product(props) { console.log(props); // đối tượng với các khóa name và cost return <p> product </p>; }

Tên tham số có thể là bất kỳ tên nào, nhưng trong React, người ta thường đặt tên nó là props. Thực chất đây không chỉ đơn giản là tên tham số, mà là một khái niệm quan trọng trong React.

Bản chất của khái niệm này như sau: khi gọi thẻ component, có thể ghi các thuộc tính chứa dữ liệu vào thẻ này. Dữ liệu này sẽ được truyền vào props của component. Sau đó, component có thể sử dụng dữ liệu này, ví dụ, để tạo ra HTML mong muốn.

Hãy thực hiện điều này:

function Product(props) { return <p> name: <span>{props.name}</span>, cost: <span>{props.cost}</span> </p>; }

Thuận tiện hơn và được chấp nhận rộng rãi hơn là không sử dụng trực tiếp đối tượng props, mà ngay lập tức thực hiện destructuring props ngay trong tham số của hàm:

function Product({ name, cost }) { return <p> name: <span>{name}</span>, cost: <span>{cost}</span> </p>; }

Hãy tạo một component Employee, hiển thị dữ liệu của nhân viên ra màn hình. Giả sử dữ liệu này là họ, tên, tên đệm và lương. Hãy định dạng dữ liệu này theo HTML bạn mong muốn. Hiển thị trong component App ba nhân viên với dữ liệu khác nhau.

Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối