This commit is contained in:
Dmitry Vasilev
2022-12-02 04:13:32 +08:00
parent f062056ad1
commit 0845a87960
12 changed files with 272 additions and 5 deletions

View File

@@ -0,0 +1,24 @@
// external
import {} from 'https://unpkg.com/jquery'
// external
import {fromEvent} from 'https://unpkg.com/baconjs?module'
const upEl = globalThis.document.createElement('button')
const downEl = globalThis.document.createElement('button')
const counterEl = globalThis.document.createElement('div')
globalThis.document.body.appendChild(upEl)
globalThis.document.body.appendChild(downEl)
globalThis.document.body.appendChild(counterEl)
const up = fromEvent(upEl, 'click');
const down = fromEvent(downEl, 'click');
const counter =
// map up to 1, down to -1
up.map(1).merge(down.map(-1))
// accumulate sum
.scan(0, (x,y) => x + y);
// assign observable value to jQuery property text
counter.onValue(text => Object.assign(counterEl, {innerText: text}));