Phản ứng bản địa

Bản cập nhật React Native 0.61 mang đến một tính năng mới quan trọng giúp cải thiện trải nghiệm phát triển.

 

Các tính năng của React Native 0.61

Trong React Native 0.61, chúng tôi liên kết các điểm nổi bật “tải lại trực tiếp” (tải lại khi lưu) và “tải lại nóng” hiện tại thành một tính năng mới duy nhất có tên là “Làm mới nhanh”. Làm mới nhanh bao gồm các nguyên tắc sau:

 

  1. Làm mới nhanh hỗ trợ hoàn toàn React hiện tại, bao gồm các thành phần chức năng và Hook.
  2. Làm mới nhanh sẽ phục hồi sau lỗi chính tả và các lỗi sai khác và quay lại tải lại toàn bộ khi được yêu cầu.
  3. Làm mới nhanh không thực hiện các thay đổi mã xâm lấn nên nó đủ đáng tin cậy để bật theo mặc định.

 

Làm mới nhanh

Phản ứng bản địa đã tải lại trực tiếp và tải lại nóng khá lâu rồi. Tải lại trực tiếp sẽ tải lại toàn bộ ứng dụng khi phát hiện thay đổi mã. Tuy nhiên, điều này sẽ làm mất vị trí hiện tại của bạn bên trong ứng dụng, đảm bảo mã không ở trạng thái bị hỏng. Tải lại nóng sẽ cố gắng "sửa chữa" những tiến bộ bạn đã thực hiện. Điều này có thể được thực hiện mà không cần tải lại toàn bộ ứng dụng, cho phép bạn xem tiến trình của mình nhanh hơn nhiều.

Tải lại nóng nghe có vẻ tuyệt vời, tuy nhiên, nó khá nhiều lỗi và không hoạt động với các tính năng React hiện tại như các thành phần chức năng có móc.

Nhóm React Native đã làm lại cả 2 tính năng này và kết hợp chúng thành tính năng Fast Reload mới. Nó được bật mặc định và sẽ thực hiện những gì có thể so sánh với tải lại nóng nếu có thể, quay lại tải lại toàn bộ nếu chắc chắn là không.

 

Nâng cấp lên React Native 0.61

Tương tự như vậy, với tất cả các bản nâng cấp React Native, bạn nên xem xét sự khác biệt của các dự án được thực hiện gần đây và áp dụng những thay đổi này cho dự án của riêng bạn.

 

Cập nhật các phiên bản phụ thuộc

Bước đầu tiên là nâng cấp các điều kiện trong package.json của bạn và giới thiệu chúng. Hãy nhớ rằng mỗi phiên bản React Native được đính kèm với một phiên bản React cụ thể, vì vậy hãy đảm bảo bạn cũng cập nhật phiên bản đó. Bạn cũng phải đảm bảo rằng trình kết xuất thử nghiệm phản ứng phù hợp với phiên bản React. Nếu bạn sử dụng nó và nâng cấp phiên bản metro-react-native-babel-preset và Babel.

 

Nâng cấp luồng

Ban đầu một cái đơn giản. Phiên bản Flow mà React Native sử dụng đã được làm mới ở phiên bản 0.61. Điều này có nghĩa là bạn cần đảm bảo rằng phần phụ thuộc của vùng chứa luồng mà bạn có được đặt thành ^0.105.0 và bạn có giá trị tương tự trong [phiên bản] tệp .flowconfig của mình.

Nếu bạn đang sử dụng Flow để kiểm tra loại trong dự án của mình, điều này có thể gây ra thêm lỗi trong mã của chính bạn. Đề xuất tốt nhất là bạn nên điều tra nhật ký thay đổi của các phiên bản trong phạm vi 0.98 và 0.105 để biết điều gì có thể gây ra chúng.

Nếu bạn đang sử dụng Typescript để kiểm tra kiểu mã của mình, bạn thực sự có thể loại bỏ tệp .flowconfig và sự phụ thuộc của ngăn luồng và bỏ qua điểm khác biệt này.

Nếu bạn không sử dụng trình kiểm tra loại, bạn có thể xem xét sử dụng trình kiểm tra loại. Lựa chọn nào cũng được, tuy nhiên, bạn nên sử dụng Typescript.