Sütunları Tanımlama ve Satırları Görüntüleme
Verilerinizi görüntülemek için erişimciler, başlıklar ve hücre görüntüleyicileriyle sütun tanımlarını yapılandırın
Sütunları Tanımlama ve Satırları Görüntüleme, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 2. 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.
ColumnDef Türü
TanStack Table'daki her sütun bir ColumnDef nesnesiyle tanımlanır. En önemli iki alan accessorKey (veri nesnenizdeki özellik adı) ve header (sütun etiketi dizesi veya oluşturma işlevi) alanlarıdır.
accessorKey yaklaşımı düz veriler için idealdir; karmaşık veya hesaplanmış değerler için accessorFn gerekir.
accessorKey ve accessorFn Karşılaştırması
Verilerinizde name veya email gibi doğrudan bir özellik varsa accessorKey: 'name' kullanın. Bir değeri hesaplamanız gerektiğinde (örneğin firstName ve lastName değerlerini birleştirirken) accessorFn: row => row.firstName + ' ' + row.lastName kullanın.
Satır verisi genel türünü ColumnDef'e verdiğinizde her ikisinin türleri de tam olarak belirlenir.
cell ile Özel Hücre Oluşturma
Bir ColumnDef içindeki cell alanı, hücre bağlamını alan ve JSX döndüren bir işlev kabul eder. Rozetleri, düğmeleri, görselleri veya herhangi bir özel kullanıcı arayüzünü hücre içinde bu şekilde oluşturursunuz.
Düz metin değerleri için cell.renderValue() yeterlidir. Daha zengin içerikler için cell.getContext() içindeki bilgileri ayrıştırın.
columns Dizisini Oluşturma
Her oluşturmada yeniden oluşturulmalarını önlemek için columns dizinizi bileşenin dışında tanımlayın. Diziyi verileriniz ve getCoreRowModel ile birlikte useReactTable'e geçirin.
ColumnDef'i veri türünüzle belirttiğinizde TypeScript sütun türlerini çıkarır ve accessorKey değerleri için otomatik tamamlama sunar.
getCoreRowModel Açıklaması
getCoreRowModel, @tanstack/react-table paketinden içe aktarılan bir fabrika işlevidir. Döndürülen değerini useReactTable'e geçirerek tablo örneğine veri dizinizden temel satır listesini nasıl oluşturacağını bildirirsiniz.
Ek satır modelleri (sıralanmış, filtrelenmiş ve sayfalanmış), ek model fabrikaları geçirilerek bunun üzerine katmanlanır.
getHeaderGroups ile thead Oluşturma
table.getHeaderGroups() çağrısını yapın ve sonucu map ederek thead öğenizi oluşturun. Her başlık grubunda bir headers dizisi, her başlıkta ise bir sütun tanımı ve bir id bulunur.
Başlık içeriğinin bir dize veya JSX döndüren bir işlev olmasına bakmaksızın oluşturmak için flexRender(header.column.columnDef.header, header.getContext()) kullanın.
getRowModel ile tbody Oluşturma
table.getRowModel().rows çağrısını yapın ve her satırı bir tr öğesine map edin. İçeride row.getVisibleCells() çağrısını yapın ve her hücreyi bir td öğesine map edin.
Sütunda tanımlanan özel hücre oluşturucusunu dikkate alarak hücre içeriğini oluşturmak için flexRender(cell.column.columnDef.cell, cell.getContext()) kullanın.
flexRender Yardımcı İşlevi
flexRender; bir React bileşenini, JSX döndüren bir işlevi veya düz bir değeri kabul eden ve bunları tutarlı biçimde oluşturan bir yardımcıdır. Sütun tanımlarının başlıklar ve hücreler için basit dizeler veya tam oluşturma işlevleri kullanmasına olanak tanır.
Bu birleştirilmiş API sayesinde, oluşturma işleminden önce tanımın türünü kontrol etmeniz gerekmez.
Hücre Bağlamı ve renderValue
cell.renderValue(), ham erişim değerini dize olarak biçimlendirilmiş şekilde döndürür. Daha fazla denetim için cell.getContext(); satır, sütun, tablo örneği ve ham değer dahil olmak üzere oluşturmanın tüm bağlamını sağlar.
Özel hücre oluşturucuları, tek bir erişim değerinin ötesindeki ilgili satır verilerine ulaşmak için bağlamı kullanır.
Sütunları Sabitleme ve Meta Veriler
Her ColumnDef, isSticky: true veya alignment: 'right' gibi keyfi üst veriler ekleyebileceğiniz bir meta alanını kabul eder. Bu verilere oluşturucunuzda column.columnDef.meta üzerinden erişin.
Sütunları sola veya sağa sabitlemek için TanStack Table, sütun nesnesinde sütun sabitleme durumu ve yardımcı yöntemler sunar.
Hepsini Bir Araya Getirme
accessorKey, header ve isteğe bağlı cell alanlarını içeren bir ColumnDef dizisi tanımlayın. useReactTable'i data, columns ve getCoreRowModel ile çağırın. Her başlığı ve hücreyi oluşturmak için flexRender kullanarak getHeaderGroups ile thead'i ve getRowModel().rows ile tbody'yi map edin.
Bu asgari kurulum size tamamen işlevsel ve tamamen özel stillendirilmiş bir tablo sunar.
accessorKey ve accessorFn Karşılaştırması
Bir TanStack Table sütun tanımında accessorKey yerine accessorFn'i ne zaman kullanmalısınız?
Ders Özeti
Doğrudan alanlar için accessorKey, hesaplanmış değerler için accessorFn kullanarak sütunları ColumnDef ile tanımlayın. columns ve getCoreRowModel'i useReactTable'e geçirin, ardından başlıkları getHeaderGroups ve gövde satırlarını getRowModel().rows ile oluşturun.
flexRender yardımcı işlevi, dize tabanlı ve işlev tabanlı başlık ve hücre tanımlarının her ikisini de aynı şekilde işler.
Sıkça Sorulan Sorular
“Sütunları Tanımlama ve Satırları Görüntüleme” dersi ücretsiz mi?
Evet — “Sütunları Tanımlama ve Satırları Görüntüleme” 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.
“Sütunları Tanımlama ve Satırları Görüntüleme” dersinde ne öğreneceğim?
Verilerinizi görüntülemek için erişimciler, başlıklar ve hücre görüntüleyicileriyle sütun tanımlarını yapılandırın 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 2. dersidir.
“Sütunları Tanımlama ve Satırları Görüntüleme” 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
- TanStack Table Felsefesi ve Başlıksız Tasarım
- Sütunları Tanımlama ve Satırları Görüntüleme
- Sıralama, Filtreleme ve Sayfalama
- Satır Seçimi ve Sanallaştırılmış Tablolar