1.11.3 • Published 5 months ago
@resourge/react-search-params v1.11.3
React-search-params
react-search-params
is a simple hook to control current url. Also provides some methods that extend URLSearchParams.
Features
- Add's beforeURLChange and URLChange event to native javascript.
- Has no dependencies.
- It uses javascript URLSearchParams to parse search.
- Decodes search params into primitive values. (ex: "?productId=10&productName=Apple" will become { product: 10, productName: "Apple" }).
react-search-params
doesn't do navigation by itself. This gives the developer the control or the ability to use it's own navigation system. see more in Usage- parseParams, parseSearch method's that extend URLSearchParams
Installation
Install using Yarn:
yarn add @resourge/react-search-params
or NPM:
npm install @resourge/react-search-params --save
Basic usage
import React from 'react';
import { useSearchParams } from '@resourge/react-search-params';
export default function Form() {
const [params, setParams] = useSearchParams(
({ url }) => window.history.replaceState(null, '', url.href)
)
return (
<div>
App
<button onClick={() => setParams({ productId: Math.random() })}>
Set new params
</button>
</div>
);
}
Documentation
useSearchParams
const [params, setParams] = useSearchParams(
// Method to control navigation
({ url }) => window.history.replaceState(null, '', url.href),
// Ex: react-router ({ url }) => history.replace(url.href),
{ }, // default params
{ } // config
)
Config
Name | Type | Required | Description |
---|---|---|---|
navigate | (config: SearchParams<T>) => void | true | Method to navigate. |
defaultParams | object | false | To define default values |
config | { hash?: boolean } | false | When hash is true it will use URL hash instead of URL to get search |
useUrl
Returns the current URL object.
const url = useUrl();
Methods
parseParams
Params object into search path
import { parseParams } from '@resourge/react-search-params';
parseParams({
productId: 10,
productName: 'Apple'
})
// ?productId=10&productName=Apple
parseSearchParams
Convert search params into true primitive values.
import { parseSearchParams } from '@resourge/react-search-params';
const searchParams = new URLSearchParams();
searchParams.set('productId', String(10))
const obj = parseSearchParams(searchParams)
// {
// productId: 10
// }
parseSearch
Converts search string into object.
import { parseSearch } from '@resourge/react-search-params';
parseSearch('?productId=10&productName=Apple')
// {
// productId: 10,
// productName: 'Apple'
// }
License
MIT Licensed.
1.11.3
5 months ago
1.11.2
7 months ago
1.11.1
7 months ago
1.9.1
10 months ago
1.9.0
10 months ago
1.9.2
10 months ago
1.11.0
9 months ago
1.10.0
9 months ago
1.8.2
1 year ago
1.8.1
1 year ago
1.8.0
1 year ago
1.7.0
1 year ago
1.6.2
1 year ago
1.6.1
2 years ago
1.6.0
2 years ago
1.5.0
2 years ago
1.3.2
2 years ago
1.4.0
2 years ago
1.3.1
2 years ago
1.3.0
2 years ago
1.2.0
2 years ago
1.1.1
2 years ago
1.1.0
2 years ago
1.2.3
2 years ago
1.2.2
2 years ago
1.2.1
2 years ago
1.1.2
2 years ago
1.0.1
2 years ago
1.0.0
2 years ago