Hook-ul useSearchParams() – Citirea parametrilor query din URL în Next.js

Navigare, Link-uri și Rutare Dinamică Next.js 13+ (next/navigation)

Oferă acces de doar-citire la parametrii query string din URL (ex: ?cautare=nextjs&sort=nou).

Sintaxă
'use client';
import { useSearchParams } from 'next/navigation';

const searchParams = useSearchParams();
const pagina = searchParams.get('pagina');
const filtru = searchParams.get('filtru');

Ce face Hook-ul useSearchParams() - Citirea parametrilor query din URL

Hook-ul useSearchParams() returnează o instanță read-only a interfeței standard `URLSearchParams`.

Permite citirea valorilor prin metoda `.get(‘cheie’)` sau verificarea existenței prin `.has(‘cheie’)`.

În componentele de client, utilizarea acestui hook necesită ca acea componentă să fie învelită într-o barieră ``, altfel întreaga pagină ar putea fi forțată în randare dinamică pe client.

Exemple

Exemplul 1: Preluarea termenului de căutare din URL într-o bară de căutare

Citește parametrul ?q= din URL.

'use client';

import { useSearchParams } from 'next/navigation';

export default function RezultateCautare() {
  const searchParams = useSearchParams();
  const interogare = searchParams.get('q') || '';

  return <h2>Rezultatele căutării pentru: {interogare}</h2>;
}

Ieșire în terminal

Afișează valoarea transmisă în query string.

Greșeli frecvente

  • Încercarea de a modifica parametrii apelând searchParams.set(); searchParams returnat este read-only. Pentru navigare cu parametri noi se folosește un URL nou cu router.push().

Comenzi înrudite