Rx-01
https://vsavkin.com/the-taxonomy-of-reactive-programming-d40e2e23dee4#.w2n08rahw
by Wemlin
HTML
<script src="https://unpkg.com/@reactivex/[email protected]/dist/global/Rx.min.js"></script>
<div class="stage">
</div>
CSS
.stage {
width: 300px;
height: 300px;
background-color: #e00;
}
TypeScript
type Pair = [number, number];
var Observable = (<any>window).Rx.Observable;
var BehaviorSubject = (<any>window).Rx.BehaviorSubject;
const moves: Observable<Pair> =
Observable.fromEvent(document.body, "mousemove").
map(e => [e.screenX, e.screenY])
const position = new BehaviorSubject<Pair>([0,0]);
window.position = position;
moves.subscribe(position);
console.log(position)