אני מנסה למסנן אירועים טבעיים ב-React Native עם RxJS. אני משתמש ב-react-native-ble-manager שמספק EventEmitter. בעצם, ללא RxJS אני עושה את הדברים הבאים (רק הקוד הרלוונטי מוצג כאן):
import React from 'react'; import RX from 'reactxp'; import { AppState, Platform, NativeModules, NativeEventEmitter, EmitterSubscription, PermissionsAndroid, ListView } from 'react-native'; import BleManager, { Peripheral } from 'react-native-ble-manager'; const BleManagerModule = Nat קרא עוד →
הנה קוד לדוגמה שמנוי לבקשת Http ומבטל אותה בעת לחיצה עם העכבר על הדף. אני רוצה להירשם מחדש אם אני מבצע לחיצה שוב.
איך אני יכול להחליף בין מנויים? FIDDLE
export class AboutComponent implements OnInit { constructor(private http:HttpClient){ } flag=true; documentclick = fromEvent(docu קרא עוד →
יש לי מתודה run במחלקה Some שמחזירה Observable ויש לה pipe בתוך המתודה הזו. ויש לי עוד pipe כאשר מבצעים את המתודה run.
import { of } from 'rxjs'; import { map, tap, delay } from 'rxjs/operators'; class Some { run() { retur קרא עוד →
יש לי את קטע הקוד הבא. מה שאני מנסה להשיג הוא להפנות לדף לא נמצא כאשר פונקציית "find" לא מוצאת שום אובייקט הזמנה בהזמנות הטעונות הנצפות.
private order: Observable<OrderModel>; ngOnInit() { this.route.params.subscribe(params => { קרא עוד →אני רוצה להגדיר את nameMatch ל-nodeName אם nodeName נוכח בזרם הנצפה. אותו הדבר עם idMatch. אני מנסה להשתמש באופרטור find של rxjs. זה מה שיש לי כרגע:
const response = (this._resourceService.search(ResourceUrns.SERVICE_METRIC) .pipe( map(getServiceNodes)) .subscribe(result => { if (result.find(nodeName)){ this.nameMatch=(nodeName); קרא עוד →הפונקציה timeout() של Rxjs לא עובדת כראוי עבור כמה ימים או חותמות זמן
import { interval } from 'rxjs'; import { timeout } from 'rxjs/operators'; const seconds = interval(1000); seconds.pipe( // Present Date (Thu Mar 19 2020 14:40:58) => 1584628858530 // to UTC time & date: (Wed Dec 30 2020 18:30:00) => 1609353000000-------Not working // to UTC time & date: (Mon Dec 30 2030 18:30:00) => 1924885800000-------Working timeo קרא עוד →אני מנסה להמיר שרשור של הבטחות:
this.tradeTypesLogicService.getList().$promise .then(this.filterTradeTypes) .then(this.setSelectedTradeType)ל-זמין של RxJS:
this.tradeTypesLogicService .getList() //returns observable now .pipe(mergeMap(this.filterTradeTypes), map(this.setSelectedTradeType)) .subscribe(); protected filterTradeTypes = (tradeTypes: Array<any>) => { this.tradeTypes = filter(tradeTypes, (trade) => { קרא עוד →
מקרה שימוש: לקרוא לנקודת קצה כל 3 דקות שתעדכן את מצב השירות מסוים באפליקציה.
הקוד הנוכחי שלי:
interval(180000) .subscribe(() => this.doRequest .pipe(catchError(() => { this.applicati
קרא עוד →
אני רוצה להריץ חלק מהלוגיקה שלי אחרי המנוי שלי עם דחייה נוספת (עם RxJS). אני יודע על האופרטור finalize, שאוכל להשתמש בו עם pipe, אבל זה יוביל להרצה מיידית לאחר סיום ה-observable שלי.
האם יש דרך ליצור עיכוב לפני הפעלת finalize?
מידע נוסף:
קרא עוד →
יישום תיעוד Angular Material שולף פרמטרי מסלול ממודולים טעונים באופן עצלני כך:
https://github.com/angular/material.angular.io/blob/master/src/app/pages/component-category-list/component-category-list.ts
// Combine params from all of the path into a single object. t קרא עוד →