1.3.0 • Published 3 years ago
@ithreat/use-results v1.3.0
use-results
Made with create-react-library
Install
npm install --save use-results
Usage
import React, { useContext } from 'react';
import { useResults } from '@ithreat/use-results';
import {StitchContext} from '@ithreat/stitch-provider';
import { useQuery } from '@ithreat/use-query';
import {ToastContext} from '@ithreat/toast-provider';
const App = () => {
const {db} = useContext(StitchContext);
const {toast} = useContext(ToastContext);
const queryHook = useQuery({
collection: 'collection-name',
baseQuery: {owner: 'company-name'},
defaultSortField: 'field-name',
defaultSortOrder: -1,
defaultPageSize: 50,
db,
toast,
});
const onChangePage = (hook) => {
const { sortBy, pageSize, page } = hook;
queryHook.runQuery({
query: queryHook.query,
page,
sortBy,
pageSize,
});
};
const resultsHook = useResults({
defaults: {
results: [],
page: 1,
pageSize: 50,
sortBy: 'field-name',
},
watch: {collection: db.collection('collection-name')},
hook: queryHook,
onChangePage: onChangePage,
});
return (
<div>
Hook used for storing results from a query including functionality for pagination.
</div>
)
};
export default App;
License
MIT © djm-ithreat