React / NextJS bir torunun Bağlantı bileşenine yönlendirme desteği çalışmıyor

0

Soru

Biraz sıkıştım... ve bunun NextJS ile ilgili bir sorun olup olmadığını anlayamıyorum.

Üç bileşenim var:

  • CardsList (tüm kartları listeler-birden fazla <Card> çocuklar)
  • Kart (bir kartın temsili-bir <Button> çocuk)
  • Düğme (Kart kullanımlarında bir düğme görüntüler <Link> bileşen)

Düğme bileşeni bir nextjs / link bileşeni içerir.

Bu CardsList gelen yazı için bağlantıya geçmek, Kart Düğmesi (ve buraya ihtiyacım var <Link>'ın href)...

Bağlantıyı (örneğin /mytest) doğrudan Karttan Düğmeye geçirirsem bu mükemmel çalışır... Ayrıca, sadece ekrana yazdırmak için Cardslist'ten Card aracılığıyla düğmeye yönlendirdiğimde dizeyi gösterir-evet, değerini görebiliyorum... ama bunu yaptığımda işe yaramıyor.:

export default function Button({ text, link }) {
  return (
    <Link href={link} passHref>
      <button className="bg-transparent hover:bg-primary text-link font-semibold hover:text-white py-1 px-3 border border-link hover:border-transparent rounded self-center" >
        {text}
      </button>
    </Link>
  );
}

Evet, {text} çalışır-ayrıca büyükanne ve büyükbaba bileşeninden (CardsList) geçirilir. Ancak, doğrudan üst bileşeninden doğrudan gönderilmediyse, Bağlantı bileşeni geçirilen desteği kabul etmez! (Evet, dizeyi yalnızca bir seviyeden geçirirsem işe yarar - ancak kart listesinden geçirilirse (ve yeni geçilirse) kabul edilmeyecektir!)

İşlenmeyen Çalışma Zamanı Hatası Hata: Başarısız pervane türü: Pervane href bir bekliyor string veya object içinde <Link> ama var undefined yerine.

Ve evet, biliyorum, devlet yönetimini kullanabilirim, ancak bunun için tüm devlet yönetimini kurmak istemiyorum-çünkü başka hiçbir yere ihtiyacı olmayacak.

Şimdiden çok teşekkür ederim çocuklar!

Sascha

hyperlink next.js reactjs
2021-11-14 14:16:17
1

En iyi cevabı

0

"Düzelttim" (gurur duymuyorum!) sadece bağlantı bileşenine pervane geçirmeden önce başka bir Dize oluşturarak.

export default function Button({ text, link }) {
  return (
    <Link href={`${link}`} passHref>
      <button className="bg-transparent hover:bg-primary text-link font-semibold hover:text-white py-1 px-3 border border-link hover:border-transparent rounded self-center" >
        {text}
      </button>
    </Link>
  );
}

Bu çok garip... belki de nedenini ileride bulurum.

Selam,

Sascha

2021-11-15 07:50:43

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................