Vue

Vue Hesaplanmış Derin Yapılar

Vue Hesaplanmış Derin Yapılar

Diziler veya nesneler gibi iç içe veya derin veri türlerinin hesaplanması söz konusu olduğunda, Vue.js veya başka bir programlama dili, verilerdeki hiyerarşik değişikliği otomatik olarak algılamaz. Ancak, hepimiz biliyoruz ki Vue.js, bazı değişiklik değişkenlerini gerçekleştirmek için izleme ve hesaplanan özellikleri sağlar. Ancak iç içe veri değişiklikleri söz konusu olduğunda, Vue.js bunu algılamıyor. Bu gönderi, dizilerin veya nesnelerin iç içe geçmiş verilerini izleyerek bazı değişiklikleri yapmayı öğrenecek.

Vue'da iç içe verileri izlemeyi öğrenmeden önce.js, önce watch özelliğinin nasıl çalıştığını anlayalım?

Mülkiyet İzle

watch özelliği, bir değişkeni izlemek için kullanılır ve kullanıcının, değişkenin değişikliğinde istenen bazı görevleri gerçekleştirmesine izin verir.

Örnek: Bir Değişken İzleme

Örneğin, bir değişkenin değişiminde bir şeyi teselli etmek istiyoruz. Vue'da böyle bir kod yazmak için sözdizimi şöyle olacaktır:


Yukarıdaki kodu yazdıktan sonra web sayfası şu şekilde olacaktır.

Butona tıklarsak butonun on-click özelliğinden dolayı “boolVar”ın durumu değişmeli ve saat “boolVar”daki değişikliği otomatik olarak algılamalı ve mesaj dizisini konsolda göstermelidir.

Mükemmel bir şekilde çalıştı; konsolda “Düğme tıklandı” mesajı görüntüleniyor.

Ancak, izleyici değişikliği algılayamaz ve dizileri veya nesneleri izlemeye geldiğinde kovulmaz. Bunun bir gösterimini görelim.

Örnek: Bir Nesneyi İzlemek

Bileşenimizde bir nesnemiz olduğunu ve nesnenin özelliğinde meydana gelen değişikliği görüntülemek istediğimizi varsayalım. Aşağıda verilen örnekte, “item” ve “quantity” olmak üzere iki anahtar/değer çiftini içeren “objVar” adında bir nesne oluşturdum. Şablon etiketinin miktarına “1” eklediğim bir düğme oluşturdum. Son olarak, watch özelliğinde “objVar” nesnesini izliyorum ve bir konsol mesajı görüntülüyorum.


Şimdi, bu kodun nesnenin miktarındaki değişikliği göstermesi gerekiyor. Ancak kodu çalıştırdığımızda ve web sayfasındaki butona tıkladığımızda:

Yukarıdaki gifte görebilirsiniz; konsolda hiçbir şey olmuyor.

Bunun nedeni, izleyicinin nesnelerin değerlerine derinlemesine bakmamasıdır ve şimdi çözeceğimiz asıl sorun budur.

Vue.js, nesnelerin ve dizilerin değerlerini derinlemesine izlemek için deep özelliğini sağlar. Deep özelliğini kullanmak ve iç içe verileri izlemek için sözdizimi aşağıdaki gibidir:

Bu sözdiziminde, deep özelliğini true olarak ayarladık ve handler() işlevini yeniden düzenledik.

Şimdi, kodu değiştirdikten sonra, web sayfasını yeniden yüklersek ve butona tıklarsak:

Burada izleyicinin çalıştığını ve mesajı konsolda görüntülediğini görebilirsiniz.

Sonuç

Bu gönderiyi okuduktan sonra, Vue'da derin veya iç içe veri yapılarını izleyerek ve hesaplayarak.js artık zor değil. Bir nesne veya dizideki bir değerin değişimini nasıl izleyeceğimizi ve Vue'nin “deep” özelliği yardımıyla bazı görevleri nasıl yürüteceğimizi öğrendik.js.

Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...