Dynamic Sütunlu Vue — Vuetify Data Table

Mustafa Çağrı Güven
1 min readMay 5, 2022

--

Selamlar, geçtiğimiz günlerde sütun sayısının sabit olmadığı bir vuetify data table oluşturmam gerekti. Genel olarak baktığımda Vuetify’ın böyle bir çözümünün olmadığını fark ettim ve basit bir component oluşturarak bunu sonradan da kullanılabilecek hale getirmek istedim (DRY!). Bu yazıda böyle bir yapıyı nasıl kurgulayabileceğimizden bahsedeceğim.

Özet olarak mantığı şu şekilde açıklayabilirim. Bu component’ımızda data isminde bir prop yer alıyor. Gelen data’yı ise onMounted içerisinde manipüle etmeye başlıyoruz.

Header’ımız yani sütunlarımızı şurada

if (props.data.length > 0) {
for (const [key] of Object.entries(props.data[0])) {
state.headers.push({ text: key, value: key })
}
}

Eğer ki data array’i içerisinde birden fazla eleman varsa, ilki bizim için yeterli olacaktır. Buradaki önemli nokta ise biz data array’i içerisindeki objelerin propertylerini üstteki kod ile manipüle ederek Vuetify’ın data table yapısına dönüştürmüş oluyoruz.

Ayrıca, objeler içerisindeki dataların da birer obje olabilme ihtimaline karşı bunları da JSON.stringify ile stringe çevirdim. Bu sizin tercihinize ve ihtiyacınıza göre kullanılmayacak bir parça da olabilir.

Aklınıza takılan bir kısım olursa lütfen sormaktan çekinmeyin. Bir sonraki yazıda görüşmek üzere, sağlıkla kalın.

--

--

Mustafa Çağrı Güven
Mustafa Çağrı Güven

Written by Mustafa Çağrı Güven

Comp. Eng. @Sabancı University Graduated '11 / Senior Frontend Wizard / Vue.js 3 / Node.js / Express.js / MEVN / Nuxt 3 / Clean Code & Open Source ❤

No responses yet