Jak wybrać element bazowy

Data publikacji: 20 maja 2025 r.

Gdy funkcja platformy internetowej zostanie zaimplementowana we wszystkich przeglądarkach, stanie się dostępna w wersji podstawowej. Po 30 miesiącach ta funkcja staje się powszechnie dostępna w ramach Baseline, czyli progu, w którym większość witryn może wdrożyć funkcje bez obaw o kompatybilność. Z tego przewodnika dowiesz się, jak korzystać z funkcji Wartość bazowa i jak na podstawie danych dostępnych od użytkowników Twojej witryny wybrać cel Wartości bazowej.

Czym jest docelowa wartość odniesienia?

Cel podstawowy to grupa funkcji internetowych, które deweloperzy mogą obsługiwać w zależności od ich stanu podstawowego. Istnieją 2 rodzaje wartości docelowych linii bazowej: ruchome i stałe.

Cele ruchome, takie jak „Podstawowe – powszechnie dostępne” lub „Podstawowe – nowo dostępne”, to cele, których zestaw funkcji może się z czasem zmieniać. Ruchome cele mają sens w przypadkach, gdy chcesz, aby zestaw obsługiwanych funkcji rozwijał się automatycznie wraz z wydawaniem nowych wersji przeglądarki.

Cele stałe to takie, w przypadku których zestaw cech nie zmienia się z czasem. Zazwyczaj cele stałe są oparte na latach kalendarzowych. Na przykład Punkt odniesienia 2023 to stały cel, który zawiera zestaw funkcji internetowych, które w 2023 r. stały się nowo dostępne w ramach punktu odniesienia. Punkt odniesienia 2023 nie obejmuje funkcji, które stały się punktem odniesienia po 2023 roku. Oznacza to, że zestaw funkcji punktu odniesienia 2023 nigdy się nie zmienia.

Stałe wartości docelowe mają sens w przypadkach, gdy najważniejsza jest przewidywalność i determinizm, ale z czasem mogą stać się nieaktualne. Dlatego, gdy używasz stałych wartości docelowych, warto regularnie je weryfikować.

Dlaczego warto wybrać cel?

Wdrażanie funkcji w internecie jest utrudnione ze względu na problemy z kompatybilnością, co sprawia, że internet nie jest tak dobry, jak mógłby być. Baseline nie tylko wyjaśnia kwestię obsługi funkcji w przeglądarkach, ale też pomaga zrozumieć, kiedy można używać określonych funkcji. Wybierając docelową grupę odbiorców, która odzwierciedla Twoich odbiorców i wymagania, możesz mieć pewność, że korzystasz z funkcji w tej grupie docelowej – bez konieczności sprawdzania poszczególnych funkcji.

Używanie danych do wybierania docelowej wartości odniesienia

Wybór odpowiedniego docelowego poziomu podstawowego powinien być w miarę możliwości oparty na danych. Gdy masz już dane, wybór odpowiedniego celu staje się łatwiejszy i bardziej świadomy.

Jeśli masz dane monitorowania użytkowników rzeczywistych dotyczące swojej witryny, możesz dowiedzieć się, jak wartości docelowe wartości bazowych są mapowane na Twoich użytkowników. Jeśli na przykład korzystasz z Google Analytics, możesz bezpłatnie uzyskać te informacje za pomocą narzędzia Google Analytics Baseline Checker.

Aby z niej skorzystać, musisz utworzyć w Google Analytics nową eksplorację, dodać do raportu dane i wymiary oraz wyeksportować raport jako plik TSV. Ten proces jest szczegółowo opisany w tych instrukcjach. Po zaimportowaniu pliku TSV do narzędzia sprawdzającego powinien pojawić się wynik podobny do tego:

Narzędzie Google Analytics Baseline Checker pokazujące podział obsługi różnych celów Baseline według odsetka. Wsparcie rośnie od nowszych do starszych celów.
Dane wyjściowe narzędzia Google Analytics Baseline Checker. Narzędzie dzieli obsługę rzeczywistych użytkowników na poszczególne cele bazowe. Zwróć uwagę, że starsze cele Baseline są bardziej popularne wśród prawdziwych użytkowników.

Zaczynamy obserwować, że inne narzędzia wdrażają obsługę funkcji Baseline, która może zapewnić dynamiczny wgląd w to, ilu odbiorców wspiera dany cel. Na przykład RUMvision zawiera panel informacyjny, który pokazuje, jaka część odbiorców obsługuje poszczególne lata Baseline.

Dane odniesienia RUMvision zawierają dane dotyczące obsługi każdego celu odniesienia, w tym podział danych dotyczących obsługi na poziomie funkcji.

Co zrobić, jeśli mój dostawca usług analitycznych lub RUM nie ma jeszcze raportu dotyczącego wartości docelowej Baseline?

Jeśli używasz narzędzia do analizy lub RUM, które nie udostępnia jeszcze raportu docelowego dotyczącego wartości bazowej, ale zawiera dane o wersjach przeglądarki, możesz połączyć dane z rzeczywistych warunków z mapowaniami wersji przeglądarki z modułu baseline-browser-mapping. Moduł udostępnia funkcję JavaScriptu – getAllVersions() – która przypisuje przeglądarki według nazwy i wersji do roku podstawowego oraz stanu obsługi funkcji powszechnie dostępnych. Te mapowania mogą być podawane jako tablice, obiekty z kluczami lub pliki CSV. Na przykład moduł sprawdzania wartości bazowych Google Analytics używa tego modułu do łączenia danych analitycznych z wartościami bazowymi.

Wyniki tej funkcji są też dostępne w postaci hostowanych plików JSON lub CSV, które są aktualizowane codziennie. Plik all_versions_with_supports.csv zawiera dane, które możesz dopasować do danych o wersji przeglądarki dostarczanych przez dostawców usług analitycznych. Zawiera on te pola:

  • browser: nazwa przeglądarki używana w baseline-browser-mapping
  • version: wersja przeglądarki; Niektóre przeglądarki używają tylko numeru wersji głównej, a inne numeru wersji major.minor.
  • year: zestaw funkcji roku bazowego, które obsługuje ta wersja przeglądarki. Jeśli wersja przeglądarki została wydana przed lipcem 2015 r., kiedy to można było określić obsługę Baseline, to pole będzie zawierać znak pre_baseline.
  • supports: to pole zawiera wartość widely lub newly w przypadku wersji przeglądarek, które obsługują te zestawy funkcji, a w przypadku wersji, które nie obsługują żadnego z tych zestawów funkcji, jest puste. Wszystkie wersje przeglądarek, które obsługują opcję Nowo dostępne, obsługują też opcję Powszechnie dostępne.
  • release_date: data wydania tej wersji przeglądarki (jeśli jest dostępna);
  • engine: nazwa silnika w przypadku przeglądarek, które są oparte na podstawowej przeglądarce Baseline. Uwzględniane są tylko przeglądarki oparte na Blink, ale w przyszłości mogą być reprezentowane także inne silniki przeglądarek.
  • engine_version: wersja Chromium, którą implementuje ta wersja przeglądarki. Służy do określania, który zestaw funkcji podstawowych jest obsługiwany przez wersję niższego poziomu.

Ten plik jest często aktualizowany, ponieważ pojawiają się nowe wersje przeglądarek i zmienia się stan obsługi różnych przeglądarek. Pamiętaj, aby codziennie odświeżać dane.

Co zrobić, jeśli nie mam danych o pomocy od prawdziwych użytkowników?

W przypadku funkcji, które są częścią Baseline, możesz nie mieć dostępu do danych o rzeczywistych użytkownikach. Dobra wiadomość jest taka, że ogólne informacje o obsłudze różnych docelowych wartości podstawowych możesz uzyskać dzięki statystykom archiwum RUM, a nawet filtrować je według kraju. Te dane nie będą dotyczyć użytkowników Twojej witryny. Jest to ogólne narzędzie informacyjne, które pokazuje, że te założenia są zazwyczaj bezpieczne:

  • Nowsze wartości docelowe Baseline, takie jak bieżący rok lub rok poprzedni, prawdopodobnie będą miały najmniejsze wsparcie wśród użytkowników. Podobnie jak w przypadku innych celów podstawowych, z czasem będą one lepiej obsługiwane.
  • Starsze wersje docelowe Baseline, zwłaszcza Baseline Widely available, będą dobrze obsługiwane. W razie wątpliwości wybierz opcję „Szeroko dostępne”, która zmienia się w miarę upływu 30-miesięcznego okresu.
  • Nawet starsze cele podstawowe, które wykraczają poza 30-miesięczny okres powszechnej dostępności, będą miały najlepszą obsługę. Chociaż opcja „Szeroko dostępna” jest dobrym domyślnym celem, w przypadku specjalnych zastosowań, które wymagają ścisłych umów SLA,

Nawet jeśli wybierzesz docelową wersję podstawową starszą niż 5 lat, prawdopodobnie będziesz mieć możliwość wdrożenia funkcji, których obecnie nie używasz. W najlepszym przypadku możesz już korzystać z tych funkcji, ale z użyciem polyfilli, które mogą nie być potrzebne.

Jak wymusić wybrany cel podstawowy w projekcie?

Browserslist to powszechnie stosowana metoda kierowania na przeglądarki, które chcesz obsługiwać. Jest on używany w pakietach i innych powiązanych narzędziach, takich jak BabelPostCSS, aby określić, czy niektóre fragmenty kodu wymagają przekształcenia lub uzupełnienia.

Możesz teraz używać Baseline z Browserslist, aby po wybraniu celu Baseline określić go jako prawidłowe zapytanie Browserslist. Dzięki temu narzędzia w projekcie będą przekształcać kod zgodnie z wybranym przez Ciebie celem. Więcej informacji znajdziesz w artykule Korzystanie z Baseline w Browserslist.

Co z funkcjami, które nie spełniają mojego celu dotyczącego linii bazowej?

Po wybraniu celu podstawowego możesz mieć funkcje, których chcesz używać, ale które nie mieszczą się w tym celu. Baseline nie podpowiada, co należy w tym przypadku zrobić, a decyzja o skorzystaniu z tych funkcji zależy od typu tworzonej witryny i oczekiwanej grupy odbiorców.

Na przykład witryny e-commerce lub B2B mogą mieć niższy próg pomocy i rozwiązywać problemy w miarę zgłaszania ich przez użytkowników, podczas gdy witryny rządowe mogą wymagać wysokiego progu pomocy. Ważna zasada jest taka, że nie wszystkie funkcje internetowe działają w ten sam sposób. Istnieje wiele sposobów klasyfikowania funkcji pod względem ich działania, ale jednym z nich jest podział na kategorie, który może być przydatny:

  • Ulepszenie: jeśli funkcja jest używana w nieobsługiwanej przeglądarce, nie powoduje to problemów. Może to pogorszyć wrażenia użytkownika, ale prawdopodobnie nie będzie to dla niego zauważalne. Przykład: loading="lazy".
  • Dodatkowe: funkcja zapewnia pewne dodatkowe korzyści, które mogą być zauważalne, np. zmiany w stylu strony lub niektóre funkcje. Jeśli funkcja jest nieobsługiwana, użytkownicy mogą nie zauważyć różnicy, chyba że porównają ją w przeglądarce, która ją obsługuje. Przykład: Subgrid
  • Krytyczny: jeśli funkcja jest nieobsługiwana, użytkownik będzie miał negatywne wrażenia, a nawet może dojść do całkowitego zepsucia. Przykład: interfejs File System Access API używany jako centralna i niezbędna funkcja.

Może się też okazać, że niektóre funkcje spoza Twojego zakresu docelowego są lepiej obsługiwane, niż myślisz. Możesz sprawdzić, ilu użytkowników obsługuje daną funkcję. Can I Use może sprawdzać obsługę poszczególnych funkcji na podstawie danych analitycznych. RUMvision umożliwia też zagłębianie się w dane na poziomie funkcji, jeśli jest to dla Ciebie przydatne.

W ten sposób możesz użyć docelowej wartości bazowej, aby zmniejszyć liczbę funkcji, które musisz dokładnie rozważyć. Nie musisz się martwić o wszystko, co mieści się w zakresie docelowym. Jeśli poza Twoim docelowym zakresem jest 1 lub 2 funkcje, które byłyby szczególnie przydatne, możesz je dokładniej zbadać i zdecydować, czy użyć kodu polyfill, czy zastosować ulepszenie progresywne.

Podsumowanie

Każda aplikacja internetowa ma inne wymagania – od witryny e-commerce, która może tolerować więcej problemów z niezgodnością, po witrynę rządową, która musi być dostępna i działać dla jak największej liczby użytkowników. Musisz samodzielnie przeprowadzić te obliczenia. Celem Baseline nie jest podpowiadanie Ci, jakie decyzje podejmować w kwestii wdrażania nowych funkcji internetowych, ale raczej jak to robić.