Read the official documentation.
This hook allows you to use a query param string the same way you'd use regular React state (i.e. via React.useState).
You can also use the getQueryParams() and setQueryParams() functions to get/set query params yourself.
-
👍 Read and set query params with ease
- Use query param strings just like you would React state
-
🔄 State syncing across components
- Hooks stay synchronized even when used in multiple components.
-
🙅♂️ No Router interference
- Uses
window
functions that don't interfere with router frameworks.
- Uses
-
💁♀️ Convenience functions available
- Use
getQueryParams()
orsetQueryParams()
to get/set query params yourself.
- Use
If this project helped save you time, please consider buying me a coffee, which powers my development (and life). Your support is much appreciated!
- Documentation
- Overview
- Donate
- Table of Contents
- Installation
- Quick Start
- TypeScript
- Icon Attribution
- Contributing
- ⭐ Found It Helpful? Star It!
- License
npm i react-use-query-param-string
import { useQueryParamString } from 'react-use-query-param-string';
// Will use query param `q` and have a default value of empty string.
// `initialized` will be true after the value has been read from the query params.
const [searchText, setSearchText, initialized] = useQueryParamString('q', '');
See the useQueryParamString docs for more usage details, including static functions.
Type definitions have been included for TypeScript support.
Favicon by Twemoji.
Open source software is awesome and so are you. 😎
Feel free to submit a pull request for bugs or additions, and make sure to update tests as appropriate. If you find a mistake in the docs, send a PR! Even the smallest changes help.
For major changes, open an issue first to discuss what you'd like to change.
⭐ Found It Helpful? Star It!
If you found this project helpful, let the community know by giving it a star: 👉⭐
Want to support the project? Feel free to grab me a coffee, which is my main source of fuel for development:
See LICENSE.md.