Skip to content

Instantly share code, notes, and snippets.

View HelloCore's full-sized avatar

Core HelloCore

  • Bangkok, Thailand
View GitHub Profile
import React from "react";
import { View, Text, StyleSheet, Button } from "react-native";
export default class MyComponent extends React.Component {
constructor(props) {
super(props);
this.state = {
counter: 0
};
let conQueue = ConcurrentDispatchQueueScheduler(qos: DispatchQoS.background)
let fObservable = pSubject
.asObservable()
.observeOn(conQueue)
// .flatMapLatest { (value) -> Observable<String> in
.flatMap { (value) -> Observable<String> in
return Observable
.create({ (observer) -> Disposable in
let myStream = BehaviorSubject<Int>(value: 0)
let startWithSubScribe = myStream
.filter { (value) -> Bool in
// ทำงานต่อเฉพาะค่าที่มากกว่า 2
return value > 2
}
.startWith(0)
.map { (value) -> String in
// Change Int to String
let myStream = BehaviorSubject<Int>(value: 0)
let messageStream = BehaviorSubject<String>(value: "A")
let withLatestStreamSubscribe = myStream.withLatestFrom(messageStream, resultSelector:
{ (valueOfMyStream, valueOfMessageStream) -> String in
return " MyStream \(valueOfMyStream) MessageStream \(valueOfMessageStream) "
})
.subscribe(onNext: { (value) in
print("On Next: [\(value)]")
})
let myStream = BehaviorSubject<Int>(value: 0)
let messageStream = BehaviorSubject<String>(value: "A")
let combineSubscribe = Observable.combineLatest(myStream, messageStream)
{ (valueOfMyStream, valueOfMessageStream) -> String in
return " MyStream \(valueOfMyStream) MessageStream \(valueOfMessageStream) "
}
.subscribe(onNext: { (value) in
print("On Next: [\(value)]")
})
let myStream = BehaviorSubject<Int>(value: 0)
let secondStream = BehaviorSubject<Int>(value: 100)
let mergedSubscribe = Observable.merge([
myStream.asObserver(),
secondStream.asObserver()
]).subscribe(onNext: { (value) in
print("On Next: [\(value)]")
})
let myStream = BehaviorSubject<Int>(value: 0)
let filterSubScribe = myStream
.filter { (value) -> Bool in
// ทำงานต่อเฉพาะค่าที่มากกว่า 2
return value > 2
}
.map { (value) -> String in
// Change Int to String
return "My Number is \(value)"
let myStream = BehaviorSubject<Int>(value: 0)
let mapSubscribe = myStream
.map { (value) -> String in
// Change Int to String
return "My Number is \(value)"
}
.subscribe(onNext: { (value) in
print("On Next: [ \(value) ]")
})
let rSubject = ReplaySubject<Int>.create(bufferSize: 3)
//let rSubject = ReplaySubject<Int>.createUnbounded()
rSubject.onNext(0)
rSubject.onNext(1)
rSubject.onNext(2)
let rSubscribe1 = rSubject.subscribe(onNext: { (value) in
print("rSubscribe1 onNext [\(value)]")
})
let pSubject = PublishSubject<Int>()
pSubject.onNext(0)
let pSubscribe1 = pSubject.asObserver()
.subscribe(onNext: { (value) in
print("pSubscribe1 onNext [\(value)]")
})
pSubject.onNext(1)