reactjs - Next Link öğesinde "Özellik 'click', 'never' türünde mevcut değil" hatası nasıl düzeltilir?


Bir inputu ve bir gönderme düğmesini saran bir formum var. Input değişim olayı tetiklendiğinde, linkin href'i güncelleniyor. Formun gönderme mantığı basitçe linke tıklamak.

Mantık çalışıyor ve bağlantıya tıklanıyor ve yönlendiriyor, ancak searchLinkRef.current.click() VS Code'da aşağıdaki hatayı oluşturuyor:

"'click' özelliği 'never' türünde mevcut değil"

Lütfen, bu nasıl düzeltilir?

//imports 
import Link from "next/link";
import {  useRef, useState } from "react";


const Test = () =>{
const [searchLink, setSearchLink] = useState(<></>);
const searchLinkRef = useRef(null);

  const setter = (
    link: any = <></>
  ) => {
    setSearchLink(link);
  };

const inputChangeHandler = (event: any) => {
    const searchString = event.target.value.toLowerCase().trim();
  setter(
    <Link href={`./search/${searchString}`} ref={searchLinkRef} />
  );

const searchSubmitHandler = (event: any) => {
    event.preventDefault();
    if (searchLinkRef.current !== null) {
      searchLinkRef.current.click();
    }
  };

  return({searchLink})

Cevap #1

Bu hatayı alıyorsunuz çünkü useRef'i çağırırken searchLinkRef'e doğru türü vermediniz. Bu, sorununuzu çözecektir:

const searchLinkRef = useRef<HTMLAnchorElement>(null);