Một số tip & tricks sẽ giúp bạn kiểm soát ReactJS dễ dàng hơn ( Phần 3 )

Tram Ho

Sử dụng Error Boundaries

Lỗi Javascript trong một phần của UI không nên ảnh hưởng toàn bộ ứng dụng. Để giải quyết vấn đề này cho người dùng React, React 16 giới thiệu một khái niệm mới gọi là “Error Boundary”
Error Boundaries là những React component được bọc ở ngoài để hứng lỗi của những component con

Khi bất kì lỗi xảy ra tại component <Home />đều được component <ErrorBound/> hứng lại. Vì vậy thay vì render ra trang trắng và quăng ra UnCatch error, thì lúc <ErrorBound/> sẽ catch lại lỗi, báo lỗi tại console và render ra một component thay thế.

<ErrorBound/> component:

Function getDerivedStateFromError() update lại state khi có lỗi, để trigger re-render ra một element | component thay thế.

method componentDidCatch() để catch lại error và log ra console để trace bugs từ error stack.

React & Typescript

Typescript là một hot topic và là một trong những lựa chọn hàng đầu của các nhà phát triển để tìm hiểu trong tương lai gần. Với những phiên bản mới của create-react-app ( CRA ), nó đã đi kèm với hỗ trợ cho Typescript. Chúng ta chỉ cần gắn thêm typescript flag khi tạo một project mới vs CRA:

Một số lợi ích khi tích hợp Typescript với react có thể kể đến như: Các tính năng mới nhất của Javascript được tích hợp, readability và validation để giảm thiểu lỗi trong quá trình phát triển, …

Dưới đây là một ví dụ đơn giản trong việc sử dụng Typescript trong một function component:

hoặc với một interface:

Nếu bạn muốn thử một thứ gì đó mới trong năm 2020, hãy bắt tay vs Typescript thử xem.

Jest + Enzyme for Testing

Kiểm tra các ứng dụng của bạn là điều mà mọi nhà phát triển nên làm và nó là bắt buộc trong nhiều dự án. Jest + Enzyme là 2 thư viện được sử dụng rộng rãi viết unit test cho React.

Jest đi kèm với create-react-app. Nó cung cấp một snapshot testing để so sánh xem có sự thay đổi nào trong component hiện tại so với trạng thái trước đó của nó không. Nếu chúng không khớp, kết quả sẽ là fail.

Enzyme là một tiện ích dùng trong kiểm thử Javascript cho React. Nó được phát triển bởi Airbnb và là một đối tác lý tưởng cho Jest.

Với các thư viện này, chúng ta có thể thực hiện các bài kiểm thử gọn gàng như:

để kiểm tra hành vi kết xuất cơ bản của một component. Nhưng chúng ta có thể làm nhiều thứ hơn nữa, ví dụ như testing for props:

Thật hữu ích, phải không? Và còn rất nhiều thứ bạn có thể làm với chúng như chế độ mocking API or testing lifecycle methods …

Lời kết

Trên đây là bài viết về một số tip tricks có thể giúp ích các bạn trong việc làm quen và sử dụng ReactJS. Hi vọng các bạn sẽ có những niềm yêu thích để chuyển hoá nó thành đam mê vs ReactJS

tham khảo:

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo