smalljs$molSzukaj⌘ KDokumentacjaPlaygroundPorównanieEkosystemO projekciePL
OfflineGetting StartedWprowadzenieModel mentalnyPierwsze krokiZ TypeScriptu do view.treeStruktura projektuNarzędziaEssentialsInstalacjaWidokiStan i reaktywnośćRoutingRenderowanieTestowanieWdrożenieRozwiązywanie problemówDataPobieranie danychSchematy danychGiper BazaMorePrezentacjaZ React, Vue i SvelteZbiór przepisówAdvancedWtyczkiMetadane modułuOfflineWidoki-duchyAboutFAQZespółWydaniaAPI$mol_button_major$mol_button_minor$mol_string$mol_number$mol_text$mol_paragraph$mol_list$mol_row$mol_link$mol_check$mol_switch$mol_select$mol_scroll$mol_page$mol_pick

Offline

Aplikacja $mol może działać dalej bez sieci — otwórz ją raz online, a pozostanie używalna po przejściu w tryb offline, aż po instalację jako PWA. Pochodzi to z jednego wbudowanego modułu, mol/offline/install, i jest niezależne od jakiejkolwiek warstwy danych.

Co robi

mol/offline/install uruchamia $mol_offline, który rejestruje service worker (web.js) jako buforujące proxy. Każde udane GET zasobu statycznego — pakietu aplikacji, stylów, obrazów — jest zapisywane w pamięci podręcznej o nazwie $mol_offline. Przy kolejnym ładowaniu worker serwuje te odpowiedzi prosto z pamięci podręcznej, więc aplikacja otwiera się natychmiast i przeżywa błąd HTTP lub zerwane połączenie, wracając do zapisanej kopii. Ponieważ cała aplikacja jest buforowalna i tak serwowana, przeglądarka może zaproponować zainstalowanie jej jako PWA.

Jak włączyć

Dodaj jedną linię do *.meta.tree swojej aplikacji:1include \/mol/offline/installTen wymuszony include wciąga moduł do pakietu, tak że jego service worker rejestruje się jako efekt uboczny — żaden inny kod nie musi się do niego odwoływać. O tym, jak działa include, zobacz Metadane modułu.Dwa wymagania przeglądarki w czasie wykonania:Serwuj przez HTTPS (lub localhost w środowisku deweloperskim) — inaczej service workery odmawiają uruchomienia.Dostarcz manifest aplikacji webowej, aby aplikacja była instalowalna.

Czym to nie jest

Buforowanie offline utrzymuje jednego klienta działającego bez sieci. Nie synchronizuje danych między klientami: żądania z ciągiem zapytania są przepuszczane, a żądania inne niż GET nigdy nie są buforowane. Gdy wielu klientów lub urządzeń musi współdzielić te same dane na żywo i edytowalne — z bezkonfliktowym scalaniem — to inna sprawa, którą zajmuje się osobny projekt Giper Baza.
Edytuj tę stronę na GitHubieCzy to było pomocne?TakNiePoprzedniaMetadane modułuNastępnaWidoki-duchy
Na tej stronieCo robiJak włączyćCzym to *nie* jest
Type to search the documentation.