0Pricing
React Academy · Ders

useRef ile Denetimsiz Girdiler

Basit form senaryolarında state yerine ref'lerle DOM girdi değerlerine erişin.

useRef ile Denetimsiz Girdiler, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

Bu derste, bunları React durumunda yönetmeden DOM girdilerinin değerlerine erişmek için useRef ile denetlenmeyen girdileri kullanacaksınız.

Denetlenen ve Denetlenmeyen Girdiler

Bir **denetlenen girdi** değerini React durumundan alır (değer + onChange). Bir **denetlenmeyen girdi** kendi değerini DOM'da yönetir; React bu değeri yalnızca gerektiğinde bir başvuru aracılığıyla okur.
// Controlled
<input value={name} onChange={e => setName(e.target.value)} />

// Uncontrolled
const nameRef = useRef();
<input ref={nameRef} defaultValue="" />

Gönderimde Değeri Okuma

Denetlenmeyen girdilerde, kullanıcı formu gönderdiğinde `ref.current.value` erişimiyle değeri okuyun. Kullanıcı yazarken hiçbir durum güncellemesi gerçekleşmez.
function Form() {
  const nameRef = useRef();
  const handleSubmit = (e) => {
    e.preventDefault();
    console.log(nameRef.current.value);
  };
  return (
    <form onSubmit={handleSubmit}>
      <input ref={nameRef} />
      <button type="submit">Submit</button>
    </form>
  );
}

defaultValue ve Değer

Denetlenmeyen girdilerde başlangıç değerini ayarlamak için `defaultValue` kullanın (`value` kullanmayın). `onChange` olmadan `value` ayarlamak React'in uyarı vermesine ve girdinin salt okunur hâle gelmesine neden olur.
<input ref={nameRef} defaultValue="Initial text" />

Denetlenmeyen Girdiler Ne Zaman Kullanılır?

Denetlenmeyen girdiler şu durumlarda kullanışlıdır: yalnızca gönderimde değerlere ihtiyaç duyduğunuz basit formlarda, React tarafından denetlenemeyen dosya girdilerinde ve yeniden oluşturmaları önlemenin önemli olduğu performans açısından kritik girdilerde.

Denetlenmeyen Girdiyi Sıfırlama

Denetlenmeyen bir girdiyi sıfırlamak için `ref.current.value = ''` ifadesini doğrudan çalıştırın. Alternatif olarak, React'in girdiyi yeni bir DOM düğümüyle yeniden oluşturmasını zorlamak için bileşenin `key` prop'unu değiştirin.
// Reset imperatively
nameRef.current.value = '';

// Or remount
setFormKey(k => k + 1);
<input key={formKey} ref={nameRef} />

Birden Fazla Girdi İçin Birden Fazla Başvuru

Birden çok denetlenmeyen alan içeren formlarda her girdi için ayrı bir başvuru oluşturun. Gönderim sırasında her başvurunun `.current.value` değerine erişin.
const emailRef = useRef();
const passwordRef = useRef();

<input ref={emailRef} type="email" />
<input ref={passwordRef} type="password" />

Oluşturulurken Odaklama

useRef, bir bileşen oluşturulduğunda bir girdiye otomatik olarak odaklanmak için sıkça kullanılır. Başvuruyu oluşturma işleminden sonra useEffect içinde okuyun.
const inputRef = useRef();
useEffect(() => {
  inputRef.current?.focus();
}, []);
<input ref={inputRef} />

Denetlenmeyen Girdiler ve Doğrulama

Denetlenmeyen girdileri doğrulamak, gönderim sırasında değerleri doğrudan okumayı gerektirir. Bu, gerçek zamanlı doğrulama için denetlenen girdilerden daha dağınık bir çözümdür. Anında geri bildirim gerektiğinde denetlenen girdileri tercih edin.

useRef Karşılığında Yapılan Ödün

Denetlenmeyen girdiler yeniden oluşturmalardan kaçınır, ancak React'in tepkiselliğinden vazgeçmenize neden olur. Başvuruyu okuyup durumu elle güncellemeden, gerçek zamanlı olarak girdi değerine göre koşullu oluşturma yapamazsınız.

Hızlı Kontrol

React'te denetlenmeyen bir girdinin başlangıç değerini ayarlamak için hangi prop'u kullanmalısınız?

Özet

Denetlenmeyen girdiler, değerleri gerektiğinde okumak için başvuruları kullanır. Başlangıç değerlerini ayarlamak için defaultValue kullanın, gönderimde ref.current.value değerini okuyun ve başvuru değerini temizleyerek veya key'i değiştirerek sıfırlayın.

Sırada

Sıradaki ders: **Dosya Girdisi ve Dosya Verilerini Okuma** — dosya girdilerini yönetecek, FileReader ile üst verileri ve görüntü verilerini okuyacaksınız.

Sıkça Sorulan Sorular

“useRef ile Denetimsiz Girdiler” dersi ücretsiz mi?

Evet — “useRef ile Denetimsiz Girdiler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.

“useRef ile Denetimsiz Girdiler” dersinde ne öğreneceğim?

Basit form senaryolarında state yerine ref'lerle DOM girdi değerlerine erişin. React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

React Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“useRef ile Denetimsiz Girdiler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu React Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. useRef ile Denetimsiz Girdiler
  2. Dosya Girdisi ve Dosya Verilerini Okuma
  3. Sürükleyip Bırakarak Dosya Yükleme Arayüzü
  4. Dosyaları Backend API'sine Yükleme
← React Academy Sayfasına Dön