- vừa được xem lúc

17 thư viện cho React Native khuyên dùng 2020

0 0 167

Người đăng: Ha Anh Duc

Theo Viblo Asia

Bài viết này mình xin giới thiệu một vài thư viện hữu ích mà mình hay dùng trong dự án.

Tạo Splash Screen với react-native-bootsplash

Đây là màn hình đầu tiên trong bất kỳ ứng dụng mobile nào. Nơi đặt bộ nhận diện thương hiệu thay vì màn hình đen, bạn có thể ẩn nó đi khi ứng dụng đã sẵn sàng.

Một trong những lý do mình thích sử dụng react-native-bootsplash hơn package nổi tiếng react-native-splash-screen là nó không ngăn bạn gặp lỗi màn hình đỏ. Package này cũng cung caasp một CLI để thay đổi kích thước nội dung, tạo tệp Android Drawable XML và tạo iOS Storyboard một cách tự động.

Tạo app icon cho từng nền tảng với react-native-make

react-native-make là một plugin dành cho React Native CLI. Sau khi được cài đặt, plugin sẽ có sẵn thông qua React Native CLI và bạn có thể dễ dàng tạo cái platform-specific icons bằng cách sử dụng command sau:

react-native set-icon --path path-to-image

react-navigation giải pháp hàng đầu cho điều hướng trong ứng dụng

Mình chọn react-navigation như một lựa chọn đầu tiên khi bắt đầu với một project.

Kể từ phiên bản v3, thư viện này sử dụng react-native-reanimatedreact-native-gesture-handler để xử lý các hoạt ảnh và cử chỉ người dùng.

Và kể từ phiên bản react-navigation v5, thư viện cung cấp một component API hoàn toàn mới. Các developer đến từ nền tảng web ReactJs sẽ cảm thấy dễ dàng và quen thuộc hơn với cách sử dụng giống như react-router.

react-native-svg cho icons

Khi bắt đầu mình đã sử dụng react-vector-icon ddeert ạo các custom icon. Tuy nhiên cách này gặp một vài vấn đề như mình phải tạo lại một font chữ mới bất cứ khi nào design của ứng dụng có sự thay đổi. Nó còn một số giới hạn trong việc hỗ trợ các thuộc tính của SVG.

Dùng react-native-svg sẽ khắc phục được hầu hết các vấn đề đó. Nếu bạn chỉ có SVG icon thì bạn có thể sử dụng tool này để convert SVG file sang React Native Component.

Validate form với react-hook-form

Với hầu hết các ứng dụng đều có sự xuất hiện của Form. Một package quá nổi tiếng và đầy đủ để làm việc với form, đặc biệt có cả trên 2 nền tảng web với ReactJs và mobile với React Native. Xem thêm document và demo đầy đủ tại react-hook-form

react-native-keychain để bảo mật những dữ liệu nhạy cảm

Hầu hết mọi người đều sử dụng Async-storage để lưu trữ những API token hay những key bảo mật khác. Thư viện react-native-keychain cung cấp quyền truy cập keychain/keystore vào ứng dụng React Native, giúp các dữ liệu được an toàn hơn.

API call sử dụng react-apollo hoặc react-query

Ứng dụng thì không thể thiếu việc giao tiếp với API được. Việc áp dụng các tính năng như caching, offline suport hay optimize API sẽ không dễ dàng nếu như bạn sử dụng Redux Saga của Redux. Với react-query hoặc apollo-client (cái này cần phụ thuộc vào công nghệ mà backend sử dụng nữa) đều có những tính năng kể trên. React-query dành cho REST API và react-apollo dành cho GraphQL.

Content Loader

React-content-loader là một thư viện tuyệt vời để tạo các placeholder loading, nó là các component SVG với nhiều preset để sử dụng, dể dàng tạo hoặc custom theo ý của mình.

Handling và Tracking Error

React-native-sentry là một cloud-base dùng để tracking lỗi một cách real-time. Bằng cách tạo free account và cài đặt react-native-sentry bạn có thể dễ dàng tìm và fix nhanh các lỗi trên môi trường production.

react-native-exception-handler là một react native module cho phép bạn handle các exception fatal/non-fatal. Module này cũng giúp ngăn chặn các sự cố đột ngột của ứng dụng React Native mà không có thông báo đến user.

Patch packages

Khi bạn sử dụng các package nhỏ lẻ hoặc không chính thống trên các ứng dụng cũ. Bạn có update các node_modules file để fix một vài issue, và khi bạn update một vài code bên trong node_module, sau đó khi npm install hoặc yarn lại thì những update đó sẽ mất đi. Trong trường hợp này có thể sử dụng patch-package để xử lý.

Detox cho E2E testing

native-testing-library là một thư viện testing API nổi tiếng cho React Native. Dành cho end-to-end testing thì bạn có thể sử dụng Wix Detox như một giải pháp cho automation end to end test.

Tổng hợp lại các package mình giới thiệu trong bài nhé:

Xin cảm ơn vì đã đọc bài viết, hi vọng nó giúp ích dành cho bạn!

Bình luận

Bài viết tương tự

- vừa được xem lúc

Học React Native từ cơ bản đến nâng cao - Phần 1 Hướng dẫn cài đặt và chạy "Hello world" (tài liệu viết từ 2018 nên giờ không còn phù hợp với version mới của react native hiện nay )

Trong bài viết này tôi sẽ hướng dẫn cài đặt React Native trên môi trường Windows (khá phổ biến ở Việt Nam). Cài đặt môi trường. Bạn cần phải có :. .

0 0 30

- vừa được xem lúc

Làm ứng dụng học toán đơn giản với React Native - Phần 6

Chào các bạn một năm mới an khang thịnh vượng, dồi dào sức khỏe. Lại là mình đây Đây là link app mà các bạn đang theo dõi :3 https://play.google.com/store/apps/details?id=com.

0 0 51

- vừa được xem lúc

Formik vs React Hook Form (Phần 1)

Các lập trình viên Front End đều làm việc rất nhiều với form cùng sự phức tạp của ứng dụng. Do vậy chúng ta cần những thư viện form mạnh mẽ hỗ trợ quản lý các form state, form validation... Thành phần module. Formik bao gồm có 9 dependencies khác. . React Hook Form thì không có.

0 0 345

- vừa được xem lúc

Làm ứng dụng học toán đơn giản với React Native - Phần 5

Chào mọi người, lại là mình đây Sau 1 thời gian vừa viết bài hướng dẫn, vừa viết code thì mình đã đưa được cái app cơ bản của mình lên google play. Đây là link: https://play.google.com/store/apps/details?id=com.

0 0 106

- vừa được xem lúc

Responsive và Adaptive UI trong React Native

Một số mẹo chung. . Luôn set min width và max width. Điều này giúp cover tốt được các màn hình cỡ XS hoặc XL.

0 0 56

- vừa được xem lúc

Những điều cần lưu ý và sử dụng Hook trong React (Phần 2)

II. UseEffect và điều cần lưu ý . Có hai loại xử lý phổ biến trong các thành phần React: những xử lý phụ không yêu cầu cleanup và những xử lý phụ có cleanup. Hãy xem xét sự khác biệt này chi tiết hơn.

0 0 119