Veri katmanı, uygulama hakkında genel bilgilerin bulunduğu bir haritadır. Tüm tarafların okuyabilmesi için standart bir anahtar grubu kullanır anlayan bir ekip üyesi olmanız gerekir. Veri katmanı durumu, API'si aracılığıyla güncellenir. Örneğin, bir uygulama aşağıdaki dataLayer ile başlayabilir:
{
title: "Original screen title"
}
dataLayer.push(DataLayer.mapOf("title", "New screen title"));
{
title: "New screen title"
}
dataLayer.push(DataLayer.mapOf("xyz", 3));
{
"title": "New screen title",
"xyz": 3
}
{
"items": ["item1", null, "item2", {"a": "aValue", "b": "bValue"}]
}
dataLayer.push("items", DataLayer.listOf(null, "item6", DataLayer.OBJECT_NOT_PRESENT,
DataLayer.mapOf("a", null)));
{
"items": [null, "item6", "item2", {"a": null, "b": "bValue"}]
}
İtmeler eşzamanlı olarak gerçekleşir; aktarıldıktan sonra değişiklikler modele yansıtılır.
Veri katmanına bir event anahtarı aktarıldığında, etiketlerin kuralları değerlendirilir ve
bu etkinlikle eşleşen etiketler tetiklenecek.
Örneğin, tetikleme kuralı "etkinlik" olan bir etikete sahip eşittir
"openScreen", komuttan sonra:
dataLayer.push("event", "openScreen");
Alan Özeti
| herkese açık statik final Nesne | OBJECT_NOT_PRESENT | Bir Listede kullanılan bu tür değerler, birleştirme sırasında Listenin az olmasına neden olur; sanki bu dizinde hiç öğe yoktu. |
Genel Yöntem Özeti
| Nesne |
get(Dize anahtarı)
|
| statik Liste<Nesne> |
listOf(Nesne... nesneler)
|
| statik Harita<Nesne, Nesne> |
mapOf(Nesne... nesneler)
|
| geçersiz |
push(Harita<Nesne, Nesne> güncelleme)
|
| geçersiz |
Alanlar
herkese açık statik final Nesne 'nı inceleyin. OBJECT_NOT_PRESENT
Bir Listede kullanılan bu tür değerler, birleştirme sırasında Listenin az olmasına neden olur; sanki bu dizinde hiç öğe yoktu.
Herkese Açık Yöntemler
herkese açık Nesne 'nı inceleyin. alın (Dize anahtarı)
Belirtilen anahtarla ilişkilendirilmiş modeldeki nesneyi döndürür. Anahtar bulunamazsa
null döndürüldü.
Anahtarda yerleşik noktalar olabilir. Örnek:
"a.b.c" tuşu, haritada "c" anahtarı içeren bir haritayı döndürür
modelde "a" anahtarı ile haritada "b" tuşuyla.
herkese açık statik Liste<Nesne> 'nı inceleyin. listOf (Nesne... nesneler)
Liste oluşturan yardımcı yöntem.
Örneğin, aşağıda "object1" ve
"object2":
List<Object> list = DataLayer.listOf("object1", "object2");
herkese açık statik Harita<Nesne, Nesne> 'nı inceleyin. mapOf (Nesne... nesneler)
Harita oluşturan yardımcı yöntem. Parametreler değerler.
Örneğin, aşağıda "key1" ile "value1" arasında bir harita oluşturulur
ve "key2" adlı kişiden "value2" adlı kullanıcıya:
Map<Object, Object> map = DataLayer.mapOf("key1", "value1", "key2", "value2");
Fırlatma
| IllegalArgumentException | tek sayıda parametre varsa |
herkese açık geçersiz 'nı inceleyin. push (Harita<Nesne, Nesne> güncelleme)
Belirtilen update nesnesini mevcut veri modeliyle birleştirerek
güncelleme olan tüm işleyiciler için geçerlidir (birleştirme işlemi gerçekleştikten sonra).
Eksik bir değeri (Listedeki boş bir dizin gibi) göstermek istiyorsanız
OBJECT_NOT_PRESENT nesnesini kullanın.
Başka bir iş parçacığı push işlemi yürütüyorsa bu çağrı, söz konusu iş parçacığının tamamlandı.
Bu genellikle eşzamanlı bir çağrıdır. Ancak, iş parçacığı yürütülürken aynı iş parçacığından başka bir aktarma gerçekleşir, ardından bu ikinci aktarma eşzamansız (ikinci aktarma işlemi, veri katmanında değişiklik yapılmadan önce döndürülür). Bu saniye aynı iş parçacığından aktarma işlemi gerçekleşebilir (örneğin, yanıt olarak bir veri katmanı aktarması yapılırsa) bir etiket tetiklemez.
update, event anahtarını içeriyorsa kurallar değerlendirilir ve
eşleşen etiketler tetiklenir.
Parametreler
| update | işlenecek güncelleme nesnesi |
herkese açık geçersiz 'nı inceleyin. push (Nesne anahtarı, Nesne değeri)
Veri katmanına bir anahtar/değer çifti verileri aktarır. Bu yalnızca kolaylık sağlayan bir yöntem
push(DataLayer.mapOf(key, value)) var.