#C | עזרה באיתור או יצירת אופרטור ריאקטיבי
-
@צדיק-תמים כתבתי בפוסט הראשון למה Throttle לא טוב לי ו - Throttle בדוטנט זה debounce ב - RxJs, זה אותו אופרטור עם שם שונה.
אם אני ישתמש עם debounce, התוצאה שאני אקבל זה כשהמשתמש יגרור את העכבר לחפש מקום בקובץ שום דבר לא ישתנה עד שהוא יפסיק לגרור, כי ב-debounce הטיימר מתאפס בכל פעם שמגיע ערך (ורק כשעבר פרק זמן בלי שהגיע שום ערך, הוא מחזיר את הערך האחרון), אני כן צריך שהאופרטור יפיק ערך לפי פרק זמן קבוע בלי קשר למתי הגיע הערך האחרון, ואז התוצאה שבזמן שהמשתמש גורר את העכבר כל עשירית שניה מתבצע חיפוש בקובץ. -
@קומפיונט עכשיו הבנתי את כוונתך
אולי תיצור לבד כזה דבר?
צריך לכאורה פשוט לאחסן את הזמן שבו השינוי טופל, וכל פעם לבדוק האם עבר X זמן מאז, אם כן מעדכנים את הזמן ומטפלים בערך החדש, אם לא מתעלמים
דוגמה בסיסית בJS:
https://codepen.io/madrichim/pen/xxBBXqm?editors=1111 -
@צדיק-תמים אני בדוטנט והספרייה זה Rx.NET. כל מי שלא משתמש עם Rx היה עושה בדיוק מה שכתבת, אבל זה הדבר האחרון שהייתי רוצה לעשות, כי אם כבר הכל ריאקטיבי אז למה להסתבך עם משתנים ותנאים, מה שחסר זה רק להוסיף את האופרטור הנכון.
ואגב, מצאתי את האופרטור Sample אז בעצם יש לי כבר תשובה לשאלה..