Counter
a simple collaborative increment decrement counter
//... a small counter app
const context = colab.changeContext();
const clicks = context.counter("clicks");
// set handler
clicks.handler = {
update(value, ctx) => {
consoe.log(ctx.userId);
console.log("updated counter", value );
valEl.innerText = value;
}
}
const incBtn = document.getElementById("inc");
const decBtn = document.getElementById("dec");
const valEl = document.getElementById("val");
incbtn.onclick = () => clicks.increment();
decBtn.onclick = () => clicks.decrement();
// ... your app logic
interface Counter {
handlers: { update?: (value: number, ctx: Ictx) => any };
decrement(): void;
increment(): void;
value(): undefined | number;
}
index
properties
Properties
handlers
counter handlers
counter has only one handler update that is called on increment and decrement
to set handlers
clicks.handlers = {
update(value, ctx) => {
console.log(value,ctx)
}
}
{ update?: (value: number, ctx: Ictx) => any ; }Methods
decrement
decrement () : void ;decrement counter
Returns
voidincrement
increment () : void ;increment counter
Returns
voidvalue
value () : undefined | number ;get counter value
Returns
counter value or undefined if counter has not been modified
undefined | number