dexie-hooks
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

dexie-hooks

Dexie hooks make it easy to use Dexie in React. If you're using Dexie.Observable they will respond to changes to the database.

  • useTable(db.table) - uses an entire table.
  • useItem(db.table, id) - uses a single item in the table.
import { useTable, useItem } from 'dexie-hooks';
import db from './my/db';
 
const AllUsersComponent: React.FC = props => {
    const [allUsers, loading, error] = useTable(db.users);
 
    if (loading) {
        return <Spinner />;
    }
 
    if (error) {
        return <div>{error.message}</div>;
    }
 
    return (
        <ul>
            {allUsers.map(user => (
                <li key={user.id}>{user.name}</li>
            ))}
        </ul>
    );
};
 
const OneUserComponent: React.FC = props => {
    const [user, loading, error] = useItem(db.users, props.userId);
 
    if (loading) {
        return <Spinner />;
    }
 
    if (error) {
        return <div>{error.message}</div>;
    }
 
    return (
        <div>
            <img src={user.image} /> {user.name}
        </div>
    );
};

/dexie-hooks/

    Package Sidebar

    Install

    npm i dexie-hooks

    Weekly Downloads

    8

    Version

    0.0.1

    License

    MIT

    Unpacked Size

    8.35 kB

    Total Files

    5

    Last publish

    Collaborators

    • sakabako