Simplest way to change URL Search Params in Next.js

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ม.ค. 2025

ความคิดเห็น • 15

  • @orcdev
    @orcdev  4 หลายเดือนก่อน

    ⚔ Ready to become a true web dev warrior? If the answer is YES then it's time to join the Mighty Horde! ⚔

  • @alexhighgarden6018
    @alexhighgarden6018 4 หลายเดือนก่อน

    Loving the videos!!

    • @orcdev
      @orcdev  4 หลายเดือนก่อน +1

      Thank you bro! Really appreciate it! ⚔

  • @raymondmichael4987
    @raymondmichael4987 3 หลายเดือนก่อน +1

    well just what I need

    • @orcdev
      @orcdev  3 หลายเดือนก่อน +1

      Awesome to hear that! If something is not going well just ping me here!

  • @Ahmed85Fathy
    @Ahmed85Fathy 3 หลายเดือนก่อน

    Does it work with other types of inputs like checkboxes, radio buttons and select inputs?

    • @orcdev
      @orcdev  3 หลายเดือนก่อน

      Yes! Tested it out with bunch of stuff. It works same like regular useState hook.

    • @Ahmed85Fathy
      @Ahmed85Fathy 3 หลายเดือนก่อน

      @@orcdev Sounds good, will test it...

    • @orcdev
      @orcdev  3 หลายเดือนก่อน

      @@Ahmed85Fathy Awesome!

  • @maaritswanderlust
    @maaritswanderlust 4 หลายเดือนก่อน

    great video

    • @orcdev
      @orcdev  4 หลายเดือนก่อน

      Glad you enjoyed it! ⚔️

  • @tusharphb6596
    @tusharphb6596 4 หลายเดือนก่อน

    Zod is enough for this. I don't think for this simple thing we should use an external package

    • @orcdev
      @orcdev  4 หลายเดือนก่อน +1

      Type safety is just nice thing to have in this package. Main power is that with this package you have a hook to change the URL parameter dynamically, which is currently really painful using Next.js hooks useRouter, usePathname, and useSearchParams.
      So instead of this (copied from some GitHub thread):
      const router = useRouter();
      const pathname = usePathname();
      const searchParams = useSearchParams();
      const current = new URLSearchParams(Array.from(searchParams.entries()));
      const search = current.toString();
      const query = search ? `?${search}` : "";
      router.push(`${pathname}${query}`);
      We can just do this:
      // Create hook
      const [search, setSearch] = useQueryState(‘search, { defaultValue: '' })
      // Set `search` directly in url
      setSearch(search);

    • @mamiraame
      @mamiraame 3 หลายเดือนก่อน

      @@orcdev also const searchParams = useSearchParams(); need suspensor