Przejdź do treści głównej

Jak wnieść swój kod

Nieoficjalne Tłumaczenie Beta

Ta strona została przetłumaczona przez PageTurner AI (beta). Nie jest oficjalnie zatwierdzona przez projekt. Znalazłeś błąd? Zgłoś problem →

Dziękujemy za zainteresowanie współtworzeniem React Native! Od komentowania i klasyfikowania problemów, przez recenzowanie i przesyłanie PR-ów — wszystkie wkłady są mile widziane. W tym dokumencie omówimy kroki, jak wnieść swój kod do React Native.

Jeśli chcesz od razu zacząć włączać swój kod, mamy listę Good first issues zawierającą błędy o stosunkowo ograniczonym zakresie. Problemy oznaczone etykietą Help wanted to dobre kandydaty do przesłania pull requesta.

Wymagania wstępne

informacja

Zapoznaj się z przewodnikiem Konfiguracja środowiska, aby skonfigurować wymagane narzędzia i środowisko deweloperskie na podstawie platformy, której używasz, oraz platformy, dla której chcesz tworzyć.

Przepływ pracy deweloperskiej

Po sklonowaniu React Native otwórz katalog i uruchom yarn, aby zainstalować zależności.

Teraz możesz uruchamiać kilka poleceń:

  • yarn start uruchamia serwer pakujący Metro.

  • yarn lint sprawdza styl kodu.

  • yarn format automatycznie formatuje twój kod.

  • yarn test uruchamia zestaw testów JavaScript oparty na Jest.

    • yarn test --watch uruchamia interaktywny monitor testów JavaScript.
    • yarn test <pattern> uruchamia testy JavaScript pasujące do wzorca nazw plików.
  • yarn flow uruchamia sprawdzanie typów Flow.

    • yarn flow-check-android wykonuje pełne sprawdzenie Flow dla plików *.android.js.
    • yarn flow-check-ios wykonuje pełne sprawdzenie Flow dla plików *.ios.js.
  • yarn test-typescript uruchamia sprawdzanie typów TypeScript.

  • yarn test-ios uruchamia zestaw testów iOS (wymagany macOS).

  • yarn build buduje wszystkie skonfigurowane pakiety — zazwyczaj to polecenie musi być uruchamiane tylko przez CI przed publikacją.

  • yarn build-types generuje typy TypeScript dla publicznego API i aktualizuje migawkę.

Testowanie swoich zmian

Testy pomagają zapobiegać wprowadzaniu regresji do bazy kodu. Zalecamy uruchomienie yarn test lub powyższych skryptów dla konkretnej platformy, aby upewnić się, że nie wprowadzasz żadnych regresji podczas pracy nad zmianą.

Repozytorium GitHub jest ciągle testowane przy użyciu CircleCI, a wyniki są dostępne przez funkcję Checks na commitach i pull requestach.

Więcej o uruchamianiu i pisaniu testów dowiesz się na stronie Jak uruchamiać i pisać testy.

Styl kodu

Używamy Prettier do formatowania naszego kodu JavaScript. To oszczędza twój czas i energię, ponieważ możesz pozwolić Prettier automatycznie poprawić problemy z formatowaniem przez integracje z edytorem lub ręcznie uruchamiając yarn run prettier. Używamy również lintra, aby wychwycić problemy ze stylem, które mogą istnieć w twoim kodzie. Możesz sprawdzić status stylu swojego kodu, uruchamiając yarn run lint.

Jednak nadal istnieją pewne style, których linter nie może wychwycić, w szczególności w kodzie Java lub Objective-C.

Objective-C

  • Spacja po deklaracjach @property

  • Nawiasy klamrowe dla każdego if w tej samej linii

  • Nawiasy dla - method, @interface i @implementation w następnej linii

  • Staraj się utrzymywać długość linii około 80 znaków (czasem to niemożliwe...)

  • Operator * wiąże się z nazwą zmiennej (np. NSObject *variableName;)

Java

  • Jeśli wywołanie metody zajmuje wiele linii, zamykający nawias znajduje się w tej samej linii co ostatni argument.

  • Jeśli nagłówek metody nie mieści się w jednej linii, każdy argument umieszczamy w osobnej linii.

  • Długość linii: 100 znaków

Wysyłanie pull requesta

Wkład w kod React Native zwykle przyjmuje formę pull requesta. Proces proponowania zmian można podsumować następująco:

  1. Sforkuj repozytorium React Native i utwórz swoją gałąź od main.

  2. Jeśli dodałeś kod, który wymaga testów, napisz testy.

  3. Jeśli zmieniłeś API, zaktualizuj dokumentację.

  4. Upewnij się, że testy przechodzą lokalnie lub na CI po otwarciu pull requesta.

  5. Sprawdź styl kodu (np. przez yarn lint --fix).

  6. Sprawdź, czy twój kod modyfikuje publiczne JS API przez yarn build-types --validate. Jeśli tak, wygeneruj nowy snapshot używając yarn build-types.

  7. Wypchnij zmiany do swojego forka.

  8. Utwórz pull request do repozytorium React Native.

  9. Przejrzyj i uwzględnij komentarze do swojego pull requesta.

  10. Bot może dodawać sugestie. Zazwyczaj prosimy o rozwiązanie tych kwestii przed recenzją kodu przez maintainera.

  11. Jeśli jeszcze tego nie zrobiłeś, prześlij Umowę Licencyjną Współtwórcy ("CLA").

Jeśli wszystko pójdzie dobrze, twój pull request zostanie scalony. Jeśli nie, maintainerzy postarają się wyjaśnić powody tej decyzji.

Jeśli to twój pierwszy pull request, przygotowaliśmy przewodnik krok po kroku. Szczegółowe informacje o obsłudze pull requestów znajdziesz na stronie Zarządzanie pull requestami.

Umowa licencyjna dla współtwórców (CLA)

Aby zaakceptować twój pull request, musisz przesłać Umowę Licencyjną Współtwórcy (CLA). Wystarczy to zrobić raz dla wszystkich projektów open source Meta. To zajmuje minutę - możesz to zrobić podczas instalacji zależności.

Licencja

Przesyłając wkład do React Native, zgadzasz się, że twoje zmiany będą objęte licencją z pliku LICENSE w głównym katalogu repozytorium.