This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

@routo/react
TypeScript icon, indicating that this package has built-in type declarations

0.8.0 • Public • Published

routo

@routo/react

npm npm bundle size coverage license

React bindings package for @routo/core

Install

yarn add @routo/core @routo/react

Usage

import { createRouter, NOT_FOUND } from '@routo/core';
import { Provider, useRouterState } from '@routo/react';

const HOME = 'router/HOME';
const POST = 'router/POST';

const routes = [
  {
    id: HOME,
    path: '/',
  },
  {
    id: POST,
    path: '/posts/:id',
  },
];

const router = createRouter(routes);

const mapping = {
  [HOME]: () => 'Home',
  [POST]: () => 'Post',
  [NOT_FOUND]: () => 'Not Found',
};

const Router = () => {
  const state = useRouterState();
  const Component = mapping[state.id];

  return <Component />;
};

const Root = () => (
  <Provider router={router}>
    <Router />
  </Provider>
);

License

MIT © Timofey Dergachev

Readme

Keywords

Package Sidebar

Install

npm i @routo/react

Weekly Downloads

3

Version

0.8.0

License

MIT

Unpacked Size

8.16 kB

Total Files

7

Last publish

Collaborators

  • exeto