@rbxts/rodux-hooks
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

rodux-hooks

Port of littensy's roact-rodux-hooked for kampf's RoactHooks library.

import Hooks from "@rbxts/roact-hooks";
import Roact from "@rbxts/roact";
import { useDispatch, useSelector } from "@rbxts/rodux-hooks";
import { Store, StoreState, increment } from "./store";

const Component: Hooks.FC<{}> = (_, hooks) => {
	const count = useSelector(hooks, (state: StoreState) => state.count);
	const dispatch = useDispatch<Store>(hooks);

	return (
		<textbutton
			Text={`Counter: ${count}`}
			BackgroundColor3={Color3.fromRGB(80, 120, 200)}
			Size={new UDim2(0.5, 0, 1, 0)}
			Event={{
				Activated: () => dispatch(increment()),
			}}
		/>
	);
};

export const Counter = new Hooks(Roact)(Component);
import { Provider } from "@rbxts/rodux-hooks";
import Roact from "@rbxts/roact";
import { Provider, store } from "./store";

export const App = () => {
	return (
		<Provider store={store}>
			...
		</Provider>
	);
};

Package Sidebar

Install

npm i @rbxts/rodux-hooks

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

32.4 kB

Total Files

33

Last publish

Collaborators

  • howmanysmall