APIs de parâmetros e consultas

Estas funções permitem ler e escrever parâmetros ou estados do histórico de forma programática.


getPageParams

Retorna um objeto com todos os parâmetros extraídos do caminho da URL atual.

typescript
function getPageParams<T extends Record<string, string>>(): T

Exemplo

javascript
// Browser location: /projects/marketing/dashboard
// Route pattern: /projects/:category/:tab

import { getPageParams } from '@beforesemicolon/router'

const params = getPageParams()
// Returns: { category: 'marketing', tab: 'dashboard' }

getSearchParams

Retorna os parâmetros de consulta da URL como um objeto chave-valor. Oferece análise JSON automática para objetos complexos na consulta.

typescript
function getSearchParams<T extends Record<string, string>>(): T

Exemplo

javascript
// Browser location: /search?query=hello&tags=%5B%22js%22%2C%22web%22%5D

import { getSearchParams } from '@beforesemicolon/router'

const query = getSearchParams()
// Returns: { query: 'hello', tags: ['js', 'web'] }

updateSearchQuery

Atualiza ou limpa os parâmetros de consulta da URL. As atualizações são feitas no lugar, substituindo o histórico, sem adicionar uma nova entrada à pilha do botão Voltar.

typescript
function updateSearchQuery(searchObject: Record<string, unknown> | null): void

Exemplo

javascript
import { updateSearchQuery } from '@beforesemicolon/router'

// Add page parameters to current URL
updateSearchQuery({ page: 2, filter: 'active' })
// Browser updates to: ?page=2&filter=active

// Clear queries
updateSearchQuery(null)
// Browser updates to: (query parameters removed)

getPageData

Retorna o objeto de estado atual do histórico.

typescript
function getPageData<T extends Record<string, unknown>>(): T

Exemplo

javascript
import { getPageData } from '@beforesemicolon/router'

const data = getPageData()
console.log('User Role:', data.role)
editar este documento