Skip to main content

Master Proptypes trong React


React là một thư viện JavaScript cho việc xây dựng giao diện người dùng (UI). React giúp quản lý dễ các trạng thái (state) của ứng dụng hơn và sẽ thay đổi UI khi mà state thay đổi.

React dựa vào các component và mỗi component có state của nó. Nếu như là state của component dùng setState() và có thể thể props từ component cha.

The Problem

Từ khi Reatc là một thư viện JavaScript và JS không cung cấp bất cứ thứ gì về type-checking, bỏ qua việc đó khi sử dụng props component có thể khiến bạn gặp bugs trong ứng dụng.

Solution

Bạn có thể dùng Js extensions như TypeScript cho việc checking, nhưng nếu bạn không muốn sử dụng nó, React cung cấp đầy đủ cho tính năng type-checking verify props của các component chính xác type. Sử dụng PropTypes, bạn có thể chắc chắn các component nhận đúng type của props.

Ví dụ, ta có Person component và nhận 2 props: `name` và `age`. Sử dụng PropTypes, ta có thể chắc chắn `name` luôn luôn là `string` và `age` luôn luôn là number.

Installing PropTypes

Để sử dụng PropTypes, ta phải cài đặt prop-type package của React. Ví dụ:


Using PropTypes

Đầu tiên ta import PropTypes từ prop-types package. Ví dụ:


Ở đây propTypes là một object chứa key-value, trong đó thì key là tên của prop và value là giá trị của prop mà chúng ta có thể nhận trong component.

Example

Nếu ta có Student component và nhận 2 props: name và age. Trong đó name có type là string và age là number.


PropTypes.string và PropTypes.number là prop được xác thực props khi nhận được là đúng type. PropTypes có một số kiểu xác thực (validators) như:


PropTypes in Functional Components


Requiring Props

Để bắt buộc prop luôn được nhận từ component cha, ta dùng thêm `isRequired` để validator prop. Ví dụ:


Giả sử nếu như Component cha của Student component chỉ truyền `age` và không truyền name thì sẽ hiện Warning như sau:


Requiring Single Child

Nếu ta dùng PropTypes.element để render single child như sau:



Nếu bạn thử render nhiều hơn 1 component truyền vào trong component Container thì sẽ Warning. Ví dụ: 


Advance PropTypes Validators

Ta có thể checking từng object của array, ví dụ tôi dùng PropTypes.arrayOf() để xác định từng phần tử trong mảng.



Và nếu như bạn thử truyền props là string thì sẽ bị Warning như ví dụ sau:


Điều này cũng tương tự với Object bằng cách sử dụng PropTypes.objectOf().

Conclusion

Qua những ví dụ trên ta có thể hiểu hơn về PropTypes và làm như nào để có thể type-checking. Bằng những thủ thuật nhỏ như vậy ta có thể tránh được những lỗi cơ bản trong ứng dụng của mình. Hy vọng bài viết hữu ích với mọi người.

Thanks for watching !

Resource: blog.bitsrc.io

Comments

Popular posts from this blog

Hướng dẫn cài LibreOffice trên Kali Linux

Xin chào mọi người ! Một số bạn không biết cài bộ công cụ văn phòng nào cho máy tính cài HĐH Kali Linux. Hôm nay mình sẽ hướng dẫn cho các bạn cài  LibreOffice trên Kali Linux. Nó giống như bộ Office của Microsoft và trên thực tế thì không bằng Microsoft được đâu. Việc cài đặt bộ Office này khá là đơn giản. Đầu tiên để cài thì bạn hãy tải LibreOffice phù hợp với phiên bản của máy tính đang sử dụng. Như của mình hiện tại là phiên bản LibreOffice_5.2.4 + Link Download (Download) Hãy tải phiên bản mới nhất có đuôi *.deb cho dễ cài đặt. Sau khi tải xong có 2 cách để các bạn cài đặt nó: + Cách 1: Sử dụng phần mềm Gdebi để cài đặt các file *.deb một cách dễ dàng. Tuy nhiên rất hay bị lỗi và không cài đặt được. + Cách 2: (Nên theo cách này) 1- Giải nén file LibreOffice ra. 2- Mở Terminal ra gõ:   ~# cd Downloads Các bạn có thể dùng lệnh ls để biết chính xác tên thư mục của mình và copy paste cho chuẩn. Tiếp sau đó thì gõ:   ~# cd LibreOffice_5....

Hacking điện thoại Android bằng Kali Linux 2016.2

Xin chào tất cả mọi người ! Với thời đại CNTT bùng nổ như hiện nay việc sử dụng một chiếc SmartPhone không có gì là khó. Hôm nay mình xin Demo thử cho các bạn xem làm như thế nào để Hack được một chiếc điện thoại Android bằng việc sử dụng các công cụ trên Kali Linux. Việc Hacking này mình sử dụng 2 công cụ:  1- msfvenom  2- metasploit Các bạn cùng xem video Demo này nhé ! Chúc bạn thành công !

Top 10 ứng dụng diệt virus cho điện thoại Android 2017 - (Part 1)

Antivirus ngày nay rất quan trọng vì nó ngăn không cho thiết bị của bạn khỏi các ứng dụng bị nhiễm vi-rút và các loại phần mềm độc hại khác. Các phần mềm chống vi-rút cung cấp khả năng phát hiện phần mềm độc hại chất lượng hàng đầu, hàng loạt tính năng bảo mật, bảo mật và chống trộm. Bạn cũng có thể sử dụng chương trình chống virut để sao lưu địa chỉ liên hệ của mình, theo dõi thiết bị của bạn từ GPS, nó nhấp chuột vào hình ảnh của một tên cướp thiết bị với máy ảnh, và cũng như khi Android, smartwatch để định vị thiết bị của bạn. Tất cả các loại thiết bị Android cần chạy chương trình chống vi-rút. Chương trình chống vi rút được vận hành trên tất cả các thiết bị Android. Bạn có thể lấy các ứng dụng chống vi-rút từ cửa hàng Google play và từ các trang web chính thức của họ. Chúng tôi đã thu thập và liệt kê 10 chương trình chống vi-rút hàng đầu sẽ giữ cho thiết bị Android của bạn an toàn và bảo mật. 1. BITDEFENDER MOBILE SECURITY   Ứng dụng Bitdefender cung cấp...