0.3.6 • Published 4 years ago
rhobo v0.3.6
React Hobo (Hook-Based Observables)
Installation
npm i rhobo
Usage
import { observable, computed, useObservable, useComputed } from "rhobo";
import type { Observable, Computed } from "rhobo";
observable
, useObservable
const testObservable = observable<type>(testDefaultValue);
const TestComponent = props => {
let x = useObservable<number>(0); // x will be the same observable even after rerenders
x.use();
return <div onClick={() => x(x()+1)}>{x()}</div> // x() is the current value, and x(value) sets x
};
computed
, useComputed
const TestComponent = props => {
let x = useObservable<number>(0);
let xPlus5 = useComputed<number>(() => x() + 5); // xPlus5 will update every time x updates
xPlus5.use();
return <div onClick={() => x.inc()}>{xPlus5()}</div>;
}
const TestWritableComponent = props => {
let x = useObservable<number>(0);
let xPlus5Times2 = useComputed<number>(
() => (x() + 5) * 2,
v => x(v/2 - 5), // this will be called when xPlus5Times2 is set
);
x.use();
xPlus5Times2.use();
return <div onClick={() => xPlus5Times2.inc()}>X: {x()}, 2*(X+5): {xPlus5Times2()}</div>
};
0.3.6
4 years ago
0.3.5
4 years ago
0.3.4
5 years ago
0.3.3
5 years ago
0.3.2
5 years ago
0.3.1
5 years ago
0.3.0
5 years ago
0.2.8
5 years ago
0.2.7
5 years ago
0.2.6
5 years ago
0.2.5
5 years ago
0.2.3
5 years ago
0.2.2
5 years ago
0.2.4
5 years ago
0.2.1
5 years ago
0.2.0
5 years ago
0.1.2
5 years ago
0.1.3
5 years ago
0.1.1
5 years ago
0.1.0
5 years ago
0.0.21
6 years ago
0.0.20
6 years ago
0.0.19
6 years ago
0.0.18
6 years ago
0.0.17
6 years ago
0.0.16
6 years ago
0.0.15
6 years ago
0.0.14
6 years ago
0.0.13
6 years ago
0.0.12
6 years ago
0.0.11
6 years ago
0.0.10
6 years ago
0.0.9
6 years ago
0.0.8
6 years ago
0.0.7
6 years ago
0.0.6
6 years ago
0.0.5
6 years ago
0.0.4
6 years ago
0.0.3
6 years ago
0.0.2
6 years ago
0.0.1
6 years ago