Package Exports
- @tty-pt/sub
- @tty-pt/sub/dist/main.amd.js
- @tty-pt/sub/dist/main.d.ts
- @tty-pt/sub/dist/main.js
- @tty-pt/sub/dist/main.js.map
- @tty-pt/sub/package.json
- @tty-pt/sub/src/main.d.ts
- @tty-pt/sub/src/main.tsx
Readme
@tty-pt/sub - Quantum subscription system
This helps you have state outside of your components, like Redux, but simpler.
Take this example:
import { useState, useEffect, useMemo } from "react";
import { Sub, reflect, emit } from "@tty-pt/sub";
class TodoSub extends Sub {
constructor() {
super("TodoSub", { url: "initial" }, { useState, useEffect, useMemo });
}
@emit("$url/todos")
add(name, text) {
return {
...this.get(),
[name]: text,
};
}
}
export
const todoSub = new TodoSub();
export default
function Todos(props) {
const todos = todoSub.use("$url/todos");
return <div>{
Object.entries(todos).map(([key, value]) => (
<div key={key}>{value}</div>
));
}</div>
}