Valójában a fluxusmintát tanulmányozom, és van valami, amit nem értek a tárolja .
Mik azok pontosan?
Sok cikket olvastam, és úgy tűnik, hogy ez a domain.
Ez azt jelenti, hogy ez az api hívásokhoz vagy háttérhívásokhoz kapcsolódó “elvont” rész?
Ez nem túl világos számomra.
Szerkesztés: Ugyanaz lehet, mint a szögletes gyár? Távoli adatok lekérése, üzleti feladat készítése vagy egyes alkalmazásállapotok tárolása (például a jelenlegi felhasználó csatlakozik)?
Megjegyzések
- Link arra, hogy pontosan mi ' hasznos lehet. Ezt a " fluxusmintát " gondolja? fluxxor.com/what-is-flux.html
- facebook.github. io / flux / docs / Overview.html # content
- A fluxus nem más, mint a közzétételi / feliratkozási minta azzal a megkötéssel, hogy minden adat először a diszpécseren megy keresztül. Garantálja, hogy az adatok nem mennek visszafelé (és zavart okoznak). Olyan dolgok, mint " Store ", " Action " etc csak egy másik módja annak, hogy a rendszer alkotóelemeit és a körülöttük átadott adatokat elmondjuk.
Válasz
Ok, hadd magyarázzam el lépésről lépésre
1 Mi a Flux?
- Mintázat
- Központi diszpécser
- Egyirányú adatfolyamok
- Listaelem
Okból is Fluxnak hívják.
Flux implementációk
- A Facebook Flux
- Alt
- Reflux
- Flummox
- NuclearJS
- Rugalmas
Csevegés a fluxussal
Reagál : Hé akció, valaki rákattintott se ”gomb.
Művelet : Köszönöm Reagálj! Regisztráltam egy akciókészítőt a diszpécsernél, ezért a diszpécsernek gondoskodnia kell az összes gondozott üzlet értesítéséről.
Diszpécser : Hadd lássam, kit érdekel egy mentett tanfolyam. Ah! Úgy tűnik, hogy a Store visszahívást regisztrált nálam, ezért értesítem őt.
Store : Szia diszpécser! Köszönöm a frissítést! Frissítem az adataimat az Ön által küldött hasznos teherrel. Akkor kiadok egy eseményt a React összetevők számára, amelyek fontosak.
React : Ooo! Fényes új adatok az üzletből! Frissítem a felhasználói felületet, hogy ezt tükrözze!
Flux API
regisztráció (függvény visszahívás) – „Hé diszpécser, futtasson, amikor műveletek történnek. -Store ”
regisztráció törlése (string id) -„ Hé diszpécser, ne aggódjon ez a művelet. -Store ”
waitFor (tömb-azonosítók) -„ Először frissítse az áruházat. –Store ”
diszpécser (objektum hasznos terhe) -” Hé diszpécser, mondja el az üzleteknek ezt a műveletet . -Akció ”
isDispatching () -” Most éppen a visszahívások elküldésével vagyok elfoglalva. ” / p>
tehát az a kérdés, amit gondolatunkban felvet:
Tehát a Flux közzétételi-feliratkozási modell?
Nem egészen.
Kétféleképpen különbözik:
1.Minden hasznos terhelést elküldünk az összes regisztrált visszahívásnak.
2. A visszahívások várhatnak más visszahívásokra
Összegzés
Flux az egyirányú adatáramlások mintája. A műveletek eseményeket kapszuláznak. A diszpécser egy olyan központi központ, amely visszahívásokat tart fenn. ez az állapot lehetővé teszi az alkalmazás számára, hogy a távoli api entitások különböző adatai legyenek: – /
Válasz
Egy egyszerű példa megkeresése ( https://github.com/facebook/flux/tree/master/examples/flux-todomvc/ ), „A boltok az alkalmazáson belül egy adott domain alkalmazásállapotát kezelik.” Vagyis adatokat tartalmaznak az alkalmazás egy aspektusának állapotáról és az annak megváltoztatásához szükséges összes kódról. Amikor új diszpécser érkezik, az összes üzlet látja azt, eldöntenék, hogyan frissítik adataikat válaszként, majd értesítik a nézeteket, hogy az adatok megváltoztak. A példákban az üzletek olyan dolgokat tartalmaznak, mint a „láthatatlan szálak listája” (ahol a diszpécser értesíti őket arról, hogy új üzenet érkezett, vagy egy régit elolvastak, a nézetek pedig az üzenet szálait jelenítik meg a felhasználó számára) és „az aktuális lejátszási idő és állapot. ”
Technikailag: ők a keretrendszer azon közbenső rétege, amely regisztrálja a visszahívásokat a diszpécsernél, hogy frissítéseket kapjon, majd értesíti a nézeteket, amikor az adatok állapota megváltozik. (A nézetek ekkor visszaküldhetik a műveleteket a diszpécsernek.) Van egy absztrakt felület, amelyet megvalósítanak, ahol az egyes áruházak visszahívást regisztrálnak a diszpécserrel, és eseményeket sugároznak a nézetekbe, de úgy tűnik, hogy az egyes áruházak konkrét módon egy adott tartományt képviselnek. (Vannak ellenpéldák?)
Válasz
Az üzletek a kód azon területei, amelyek tárolják az alkalmazás állapotát és az összetett logikát. Ennek oka az, hogy több nézet valószínűleg ugyanazokat az adatokat használja, de másképp jeleníti meg őket, vagy egy, de nem minden adatot jelenít meg egy adott tartományhoz. Például egy felhasználó bejelentkezik, és megkapja keresztnevét, vezetéknevét, e-mail címét, fényképét, városát, címét, telefonszámát stb. Ezek az információk külön nézetekben jelennek meg. Ahelyett, hogy adatokat másolnánk a nézetek között, használhatunk egy StoreStore nevű Store-ot, amely tárolja az adatokat a felhasználó számára. Ez leegyszerűsíti a rendszert azzal, hogy “egy helyet ad a változtatásra”, amikor a tárolt logikát vagy adatot meg kell változtatni. Rengeteg más oka van a Store használatának, de ez szerintem a legkézenfekvőbb.