React Input Veri Sorunu

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    EmQceR
    EmQceR's avatar
    Kayıt Tarihi: 14/Kasım/2007
    Erkek

    Selam hocalar,

    bitirme projem için react ile bir şeyler geliştiriyorum. ürün güncelleme sayfasında api ile verileri input'a çekiyor fakat hiçbir şekilde input'a değer giremiyorum. 

    yardımcı olabilir misiniz? 

    video ile gösterdim detayları:

    https://streamable.com/392ej2 

    bu da kodlar:

    https://jsfiddle.net/ypqhs0Lj/ 

     


    Bu Yüce Türk Milleti ne ihanetler gördü hepsinin üstesinden gelmeyi başararak tarihe nice zaferler yazdırdı. Bu Millet Kuva-yı milliye hareketini yeniden başlatır. Sivas Kongresini yeniden toplar, Ya İstiklal, Ya Ölüm diye haykırır ve gereğini yapar. Türk Milleti ihaneti ve hainleri hiç affetmez. Dileğimiz odur ki bu iş sandıkta bitsin, aksi halde "sürüye dalmayı göze alan Kurt, çobanın da, köpeğinde hesabını yapmaz."
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Cosmic
    Cosmic's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    Selamlar,

    ilk olarak urunler statein niye array olarak geliyor? urunleri map edip her ürün için form basmışsın o yüzden soruyorum.

    bir inputuna baktım oradan açıklayacağım;

    <input className="shadow-sm form-control" type="text" name="baslik" onChange={ e => setBaslik(e.target.value) } value={urun.baslik} placeholder="Ürün Başlığı" required />

    burada onChange de setBaslik statetine inputa yazılan değeri vermişsin bu tamam. Ancak inputun value propuna bu set ettiğin stateti yazmamışsın. değişiklik bu yüzden olmuyor.

    <input className="shadow-sm form-control" type="text" name="baslik" onChange={ e => setBaslik(e.target.value) } value={baslik} placeholder="Ürün Başlığı" required />

    kullanımın bu şekilde olmalı.  böyle yaptığın zaman da senin apiden gelen değer inputa yazmamış olacak. Onun içinde apiden veriyi çektiğin yerde setBaslik ile apiden gelen değeri statetine yazacaksın. 

    Ek; Reactta form işlemlerini kütüphanesiz yapmak meşagatli. Ui kit olarak antd güzel kütüphane onun form componenti de güzel. Ben yok komple ui kütüphanesi kullanmak istemiyorum diyorsan form işlemleri için 

    https://react-hook-form.com şunu kullanabilirsin


    Bittik biz bittik
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    EmQceR
    EmQceR's avatar
    Kayıt Tarihi: 14/Kasım/2007
    Erkek
    Cosmic bunu yazdı

    Selamlar,

    ilk olarak urunler statein niye array olarak geliyor? urunleri map edip her ürün için form basmışsın o yüzden soruyorum.

    bir inputuna baktım oradan açıklayacağım;

    < name="baslik" ="text" /> setBaslik(e.target.value) } value={urun.baslik} placeholder="Ürün Başlığı" required />

    burada onChange de setBaslik statetine inputa yazılan değeri vermişsin bu tamam. Ancak inputun value propuna bu set ettiğin stateti yazmamışsın. değişiklik bu yüzden olmuyor.

    < name="baslik" ="text" /> setBaslik(e.target.value) } value={baslik} placeholder="Ürün Başlığı" required />

    kullanımın bu şekilde olmalı.  böyle yaptığın zaman da senin apiden gelen değer inputa yazmamış olacak. Onun içinde apiden veriyi çektiğin yerde setBaslik ile apiden gelen değeri statetine yazacaksın. 

    Ek; Reactta form işlemlerini kütüphanesiz yapmak meşagatli. Ui kit olarak antd güzel kütüphane onun form componenti de güzel. Ben yok komple ui kütüphanesi kullanmak istemiyorum diyorsan form işlemleri için 

    https://react-hook-form.com şunu kullanabilirsin

    teşekkürler hocam nokta atışı cevap oldu. api'den gelen datanın olduğu kısmı aşağıdaki şekilde güncelledim ve sorun çözüldü. kütüphane kullanımı daha önce görmüştüm fakat girmedim nedense :) 

                }else{
                    setBaslik(data[0].baslik);
                    setFiyat(data[0].fiyat);
                    setAciklama(data[0].aciklama);
                    setKategori(data[0].kategori_id);
                }
     

    Bu Yüce Türk Milleti ne ihanetler gördü hepsinin üstesinden gelmeyi başararak tarihe nice zaferler yazdırdı. Bu Millet Kuva-yı milliye hareketini yeniden başlatır. Sivas Kongresini yeniden toplar, Ya İstiklal, Ya Ölüm diye haykırır ve gereğini yapar. Türk Milleti ihaneti ve hainleri hiç affetmez. Dileğimiz odur ki bu iş sandıkta bitsin, aksi halde "sürüye dalmayı göze alan Kurt, çobanın da, köpeğinde hesabını yapmaz."
Toplam Hit: 168 Toplam Mesaj: 3
react