Ogłaszamy React Native 0.62 z obsługą Flippera
Ta strona została przetłumaczona przez PageTurner AI (beta). Nie jest oficjalnie zatwierdzona przez projekt. Znalazłeś błąd? Zgłoś problem →
Dziś wydajemy React Native w wersji 0.62, która domyślnie zawiera obsługę Flippera.
To wydanie następuje w trakcie globalnej pandemii. Publikujemy tę wersję dziś, aby docenić pracę setek współtwórców, którzy umożliwili to wydanie, i zapobiec zbytniemu odsunięciu się od gałęzi głównej. Prosimy o wyrozumiałość dla ograniczonej dostępności współtwórców do pomocy przy problemach i rozważenie przełożenia aktualizacji, jeśli to konieczne.
Flipper domyślnie
Flipper to narzędzie dla deweloperów do debugowania aplikacji mobilnych. Cieszy się popularnością w społecznościach Androida i iOS, a w tym wydaniu domyślnie włączyliśmy jego obsługę dla nowych i istniejących aplikacji React Native.

Flipper oferuje następujące funkcje od ręki:
-
Metro Actions: Przeładuj aplikację i wywołaj menu deweloperskie bezpośrednio z paska narzędzi.
-
Crash Reporter: Przeglądaj raporty o awariach z urządzeń Android i iOS.
-
React DevTools: Korzystaj z najnowszej wersji React DevTools obok innych narzędzi.
-
Network Inspector: Przeglądaj wszystkie żądania sieciowe wysyłane przez aplikacje na urządzeniu.
-
Metro and Device Logs: Przeglądaj, wyszukuj i filtruj logi z Metro oraz urządzenia.
-
Native Layout Inspector: Przeglądaj i edytuj natywny układ generowany przez renderer React Native.
-
Database and Preference Inspectors: Przeglądaj i edytuj bazy danych oraz preferencje urządzenia.
Dodatkowo, ponieważ Flipper to rozszerzalna platforma, zapewnia marketplace pobierający wtyczki z NPM, co umożliwia publikowanie i instalację niestandardowych wtyczek dopasowanych do Twoich workflow. Zobacz dostępne wtyczki tutaj.
Więcej informacji znajdziesz w dokumentacji Flippera.
Nowe funkcje trybu ciemnego
Dodaliśmy nowy moduł Appearance zapewniający dostęp do preferencji wyglądu użytkownika, takich jak preferowany schemat kolorów (jasny lub ciemny).
const colorScheme = Appearance.getColorScheme();
if (colorScheme === 'dark') {
// Use dark color scheme
}
Dodaliśmy także hook do subskrybowania aktualizacji stanu preferencji użytkownika:
import {Text, useColorScheme} from 'react-native';
const MyComponent = () => {
const colorScheme = useColorScheme();
return <Text>useColorScheme(): {colorScheme}</Text>;
};
Więcej informacji znajdziesz w dokumentacji Appearance i useColorScheme.
Przeniesienie Apple TV do react-native-tvos
W ramach naszej inicjatywy Lean Core i aby dostosować Apple TV do innych platform takich jak React Native Windows i React Native macOS, zaczęliśmy usuwać kod specyficzny dla Apple TV z rdzenia.
Od teraz obsługa Apple TV w React Native będzie utrzymywana w repozytorium react-native-community/react-native-tvos wraz z odpowiadającym pakietem NPM react-native-tvos. To pełny fork głównego repozytorium zawierający wyłącznie zmiany potrzebne do obsługi Apple TV.
Wydania react-native-tvos będą oparte na publicznych wydaniach React Native. Dla wydania 0.62 react-native prosimy o aktualizację projektów Apple TV do wersji react-native-tvos 0.62.
Większe wsparcie przy aktualizacji
Gdy wydano wersję 0.61, społeczność wprowadziła nowe narzędzie Upgrade Helper wspierające programistów w aktualizowaniu React Native. Upgrade Helper pokazuje różnice między twoją obecną wersją a docelową, co pozwala zobaczyć zmiany potrzebne do przeprowadzenia aktualizacji.
Nawet z tym narzędziem podczas aktualizacji mogą pojawić się problemy. Dlatego dziś wprowadzamy dedykowane wsparcie ogłaszając Upgrade-Support. To tracker GitHub, gdzie użytkownicy mogą zgłaszać problemy związane z aktualizacją projektów, aby otrzymać pomoc od społeczności.
Stale pracujemy nad poprawą procesu aktualizacji i mamy nadzieję, że te narzędzia zapewnią użytkownikom wsparcie w nietypowych przypadkach, których jeszcze nie przewidzieliśmy.
Inne ulepszenia
-
LogBox: Nowe środowisko błędów i ostrzeżeń w LogBox dodajemy jako opcję do włączenia; by je aktywować, dodaj
require('react-native').unstable_enableLogBox()do plikuindex.js. -
React DevTools v4: Ta zmiana obejmuje aktualizację do najnowszych React DevTools, które oferują znaczną poprawę wydajności, lepszą nawigację i pełne wsparcie dla React Hooks.
-
Ulepszenia dostępności: Wprowadziliśmy poprawki w dostępności, w tym dodanie accessibilityValue, brakujących właściwości w Touchables,
onSlidingCompletezdarzeń dostępności oraz zmianę domyślnej roli komponentu Switch z"button"na"switch".
Zmiany łamiące kompatybilność
-
Usunięcie PropTypes: Usuwamy
propTypesz podstawowych komponentów, aby zmniejszyć wpływ React Native core na rozmiar aplikacji i promować statyczne systemy typów sprawdzane podczas kompilacji zamiast w czasie wykonania. -
Usunięcie accessibilityStates: Usunęliśmy przestarzałą właściwość
accessibilityStatesna rzecz nowej właściwościaccessibilityState, która semantycznie bogatszym sposobem przekazywania informacji o stanie komponentu do usług dostępności. -
Zmiany w TextInput: Usunęliśmy
onTextInputz TextInput, ponieważ jest rzadko używane, niezgodne ze standardem W3C i trudne do implementacji w Fabric. Usunęliśmy także nieudokumentowaną właściwośćinputVieworazselectionState.
Przestarzałe funkcje
-
AccessibilityInfo.fetchbyło już przestarzałe, ale w tej wersji dodaliśmy ostrzeżenie. -
Ustawienie
useNativeDriverjest teraz wymagane, aby umożliwić zmianę domyślnej wartości w przyszłości. -
Referencja (
ref) komponentuAnimatedjest teraz jego wewnętrznym komponentem, agetNodezostało oznaczone jako przestarzałe.
Podziękowania
Dziękujemy setkom współtwórców, którzy pomogli stworzyć wersję 0.62!
Aby zobaczyć wszystkie aktualizacje, zajrzyj do changeloga dla wersji 0.62.