Locking
ReactiveJS handles asynchronous values transparently using read and write locks.
const url = "some url";
const page = Network.Web.Get(url);
const status = Reactive.State(Maths.Integer)(0);
const save = Reactive.Reverse(Text.Plain)(page, [], [status], (written) => {
const posted = Network.Web.Post(url, written);
const nextStatus = posted.status;
return [nextStatus];
});
Button.Setter(save, page, () => {
Content.Text("Save");
});