getAllQueryString
Tira todos os parâmetros de consulta de uma URL e os converte em objeto.
API
getAllQueryString
Retorna
| Argumento | Descrição | Tipo |
|---|---|---|
Object | Objeto com os parâmetros de consulta | Record<string, string> |
Parâmetros
| Parâmetro | Descrição | Tipo | Padrão |
|---|---|---|---|
url | URL a analisar (opcional; por padrão a da página atual) | string | Opcional |
Exemplo
Uso básico
import { getAllQueryString } from 'ranuts';
// Suponha que a URL atual seja https://example.com?name=John&age=30
const params = getAllQueryString();
console.log(params); // { name: 'John', age: '30' }Analisar uma URL específica
import { getAllQueryString } from 'ranuts';
const url = 'https://example.com?page=1&limit=10&sort=name';
const params = getAllQueryString(url);
console.log(params); // { page: '1', limit: '10', sort: 'name' }Ler um parâmetro específico
import { getAllQueryString } from 'ranuts';
const params = getAllQueryString();
const page = params.page || '1';
const limit = params.limit || '10';
console.log(`Página: ${page}, limite: ${limit}`);Parâmetros codificados
import { getAllQueryString } from 'ranuts';
// URL: https://example.com?search=hello%20world
const params = getAllQueryString();
console.log(params.search); // 'hello world' (decodificado sozinho)Notas
Uma flag sozinha mantém seu lugar.
?embede?embed=dão os dois{ embed: '' }. Antes da 0.3, qualquer parâmetro sem valor era descartado, o que fazia?readonlye?embed(a forma habitual de escrever uma flag booleana) ficarem indistinguíveis do parâmetro ausente. Leia essas flags comqueryFlag.O fragmento nunca vaza para o último valor.
?lang=en#sectiondá{ lang: 'en' }.Só o primeiro
=divide, então um valor pode conter outro:?next=/a?b=1dá{ next: '/a?b=1' }.Decodificação: chaves e valores são decodificados de porcentagem, e o
+vira espaço, igual aoURLSearchParams. Um escape malformado como%zzé mantido como está, em vez de o parâmetro ser descartado, para que um valor ruim não esconda os outros.No servidor: devolve
{}quando não háwindownem umaurlfoi passada. Passe uma URL para usá-lo num script de build.URL padrão: sem
url, usawindow.location.href.Parâmetros repetidos: só o último valor é guardado.