restate / v1.0.0
עיון ב־API
כל export של @kkwaenggwari/restate 1.0, עם ארגומנטים, ערכי החזרה והתנהגות.
בעמוד הזה
Exportsמתודות של מאגרמתודות של מאגר שמוראפשרויות persistedRestateשדות סטטוסrestateManager ו־scope.managerממשק מתאם האחסוןExports
הכול מיובא מ־@kkwaenggwari/restate, באינטרנט וב־React Native.
| Export | מחזיר | משמש ל־ |
|---|---|---|
restate(initial, updater | options?) | hook של מאגר | ליצור מאגר משותף בזיכרון. |
persistedRestate(initial, options) | hook של מאגר שמור | ליצור מאגר שמשוחזר ונשמר דרך האחסון. |
useRestateScope(factory?) | תוצאת ה־factory או scope | להחזיק מאגרים ברכיב; מושמדים אחרי ההסרה. |
createRestateScope() | RestateScope | להחזיק מאגרים מחוץ ל־React; קראו ל־destroy() בסוף. |
shallow(left, right) | boolean | להשוות בחירות לעומק של רמה אחת. |
batch(callback) | תוצאת ה־callback | להודיע למנויים פעם אחת אחרי כמה שינויים. |
restateManager | RestateManager | להמתין לנתוני ההפעלה ולהריץ פעולות גורפות על המאגרים הגלובליים. |
createIndexedDBStorage(options?) | RestateStorage | ליצור מתאם IndexedDB עם שם מסד נתונים או store מותאם. |
createMMKVStorage(options?) | RestateStorage | ליצור מתאם MMKV עם המופע או ההגדרות שלכם. |
מתודות של מאגר
מאגר הוא פונקציה שקוראים לה כ־hook, עם המתודות האלה.
| חבר | תיאור |
|---|---|
useStore() | מחזיר את הערך כולו ומתרנדר בכל שינוי. |
useStore(selector, isEqual?) | מחזיר את הבחירה; מתרנדר כש־isEqual (ברירת מחדל Object.is) מדווח על שינוי. |
get() | הערך הנוכחי, בלי הרשמה. |
set(value | updater) | מחליף את הערך או מחשב אותו מהקודם. נזנח אחרי destroy(). |
reset() | משחזר את הערך ההתחלתי שהוצהר ומחזיר אותו. |
subscribe(listener) | קורא ל־listener(value, previous, event) אחרי כל שינוי; מחזיר פונקציה לביטול ההרשמה. |
subscribeSelector(selector, listener, isEqual?) | קורא ל־listener רק כשהבחירה משתנה. |
on(type, listener) | מאזין לאירועים כמו change, reset, save או error. |
start() / stop() / isRunning() | שליטה ידנית ב־updater. |
destroy() / isDestroyed() | משחרר את המאזינים ואת ה־updater. הרשמות מאוחרות יותר זורקות STORE_DESTROYED. |
getInitial() / getServerSnapshot() / getError() | ערך התחלתי, תמונת מצב של השרת ושגיאת המאזין האחרונה. |
id / kind | id ייחודי; memory או persistent. |
מתודות של מאגר שמור
persistedRestate מחזיר מאגר עם החברים הנוספים האלה.
| חבר | תיאור |
|---|---|
ready | Promise שמתממש כשהטעינה האוטומטית מסתיימת, גם אם נכשלה. בדקו את status(). |
save() | כותב את הערך הנוכחי; מתממש עם הערך שנכתב בפועל. |
restore() | קורא את הערך השמור לזיכרון. |
hasSaved() | האם קיימת רשומה שמורה. |
clearStorage() | מוחק את הרשומה השמורה; הזיכרון לא משתנה. |
resetAndClearStorage() | מחזיר את הזיכרון לערך ההתחלתי ומוחק את הרשומה השמורה. |
initialize() | טוען שוב, למשל אחרי תיקון רשומה שנכשלה. |
status() | תמונת מצב קפואה של הסטטוס; אותו אובייקט עד ששדה משתנה. |
useStatus(selector?, isEqual?) | hook שמתרנדר מחדש כשהסטטוס או החלק הנבחר שלו משתנה. |
key / storageKey / storage | מפתח לוגי, מפתח עם namespace והמתאם שבשימוש. |
אפשרויות persistedRestate
key הוא חובה. כל שאר האפשרויות אופציונליות.
| אפשרות | ברירת מחדל | משמעות |
|---|---|---|
key | חובה | מפתח לוגי של הרשומה. |
namespace | "@kkwaenggwari/restate" | קידומת למפתח השמור; מחרוזת ריקה מבטלת אותה. |
storage | IndexedDB / MMKV | מתאם במקום ברירת המחדל של הפלטפורמה. |
autoSave | false | true שומר אחרי כל שינוי; { delayMs } ממתין להפסקה. |
version / migrate | 1 / אין | גרסת הרשומה ואיך לשדרג רשומות ישנות. |
validate | אין | בודק ערכים לפני שמירה ואחרי שחזור או הגירה. |
serializer | JSON | פונקציות serialize ו־deserialize מותאמות. |
operationTimeoutMs | 30000 | זמן מרבי לפעולת אחסון. |
maxPendingOperations | 256 | פעולות ממתינות מותרות, כולל הפעילה. |
maxStorageCharacters | 5242880 | הערך המקודד הגדול ביותר, ביחידות קוד UTF-16. |
updater / managed / serverSnapshot / onError | — | כמו האפשרויות של restate. |
שדות סטטוס
status() ו־useStatus() מחזירים את השדות האלה.
| שדה | משמעות |
|---|---|
ready | הטעינה האוטומטית הסתיימה. |
dirty | הזיכרון שונה מהערך האחרון שנטען, נשמר או שוחזר. |
operation | פעולת האחסון הנוכחית, או null. |
pending | פעולות אחסון שלא הסתיימו, כולל הפעילה. |
blocked | קריאה למתאם שבוטלה או שפג זמנה עדיין לא הסתיימה. |
available | האם אפשר להשתמש באחסון. |
error / observerError | שגיאת האחסון האחרונה; שגיאת מאזין הסטטוס האחרונה. |
lastSavedAt / lastRestoredAt | מילישניות epoch של ההצלחה האחרונה, או null. |
restateManager ו־scope.manager
כל מנהל עוקב אחרי המאגרים השמורים שנרשמו אצלו.
| חבר | תיאור |
|---|---|
ready | ממתין למאגרים שרשומים ברגע הגישה; נדחה עם BULK_OPERATION_FAILED. |
saveAll(options?) / restoreAll(options?) | מריץ save או restore על כל מאגר; { concurrency } מגביל עבודה מקבילית. |
clearStorageAll() / resetAll() / resetAllAndClearStorage() | מנקה רשומות, מאפס זיכרון, או את שניהם. |
list() / get(idOrKey) / size() | בחינת המאגרים הרשומים. |
subscribe(listener) / status() | מעקב אחרי אירועי המנהל ושגיאות מאזינים. |
destroyAll() | משמיד כל מאגר רשום. |
ממשק מתאם האחסון
העבירו ב־storage אובייקט עם המתודות האלה. כל מתודה יכולה להחזיר ערך או Promise.
| מתודה | תיאור |
|---|---|
getItem(key, context?) | מחזירה את המחרוזת השמורה או null. |
setItem(key, value, context?) | שומרת את המחרוזת. |
removeItem(key, context?) | מוחקת את הרשומה. |
isAvailable?() | מדווחת באופן סינכרוני אם אפשר להשתמש באחסון. |
clear?() / close?() | ריקון וניקוי אופציונליים. |
coordinationKey? | אובייקט משותף לעוטפים של אותו אחסון בסיסי. |