aturan . PetaDiff
Tipe MapDiff.
Tipe MapDiff mewakili hasil perbandingan dua objek rule.Map .
Tidak ada literal MapDiff untuk digunakan dalam membuat diff. Objek MapDiff dikembalikan melalui panggilan ke fungsi rule.Map#diff .
Fungsi MapDiff yang dijelaskan di bawah ini dipanggil dengan merangkai dengan rule.Map#diff . Semua fungsi MapDiff mengembalikan aturan. Menetapkan kunci daftar objek yang dibandingkan antara objek Peta.
// Compare two Map objects and return whether the key "a" has been // affected; that is, key "a" was added or removed, or its value was updated. request.resource.data.diff(resource.data).affectedKeys().hasOnly(["a"]);
Metode
menambahkanKeys
addKeys() mengembalikan aturan.Set
Mengembalikan aturan.Set , yang mencantumkan kunci apa pun yang berisi panggilan Peta diff()
yang tidak dimiliki oleh Peta yang diteruskan ke diff()
.
- Kembali
non-null rules.Set
, daftar kunci yang ditambahkan ke Rules.Map diteruskan ke fungsiMap.diff()
.
Contoh
{"a":1}.diff({}).addedKeys() == ["a"].toSet()
terpengaruhKeys
terpengaruhKeys() mengembalikan aturan.Set
Mengembalikan aturan.Set , yang mencantumkan kunci apa pun yang telah ditambahkan, dihapus, atau dimodifikasi dari panggilan Peta diff()
dibandingkan dengan Peta yang diteruskan ke diff()
. Fungsi ini mengembalikan set yang setara dengan hasil gabungan MapDiff.addedKeys()
, MapDiff.removedKeys()
dan MapDiff.changedKeys()
.
({"a":0, "c":0, "u":0}).diff({"r":0, "c":1, "u": 0}).affectedKeys() == ["a", "r", "c"].toSet()
- Kembali
non-null rules.Set
, daftar kunci yang ditambahkan, dihapus dari, atau diubah dari aturan. Peta diteruskan ke fungsiMap.diff()
.
berubahKunci
changeKeys() mengembalikan aturan.Set
Mengembalikan rule.Set , yang mencantumkan kunci apa pun yang muncul di Map yang memanggil diff()
dan Map yang diteruskan ke diff()
, namun nilainya tidak sama.
- Kembali
non-null rules.Set
, daftar kunci yang muncul di kedua Rules.Map s tetapi nilainya tidak sama.
Contoh
{"a":0}.diff({"a":1, "b":4}).changedKeys() == ["a"].toSet()
dihapusKunci
dihapusKeys() mengembalikan aturan.Set
Mengembalikan aturan.Set , yang mencantumkan kunci apa pun yang tidak terdapat dalam panggilan Peta diff()
dibandingkan dengan Peta yang diteruskan ke diff()
.
- Kembali
non-null rules.Set
, daftar kunci yang dihapus dari Rules.Map diteruskan ke fungsiMap.diff()
.
Contoh
{}.diff({"a":1}).removedKeys() == ["a"].toSet()
tidak berubahKunci
tidak berubahKeys() mengembalikan aturan.Set
Mengembalikan rule.Set , yang mencantumkan kunci apa pun yang muncul di Map yang memanggil diff()
dan Map yang diteruskan ke diff()
, dan yang nilainya sama.
Contoh
{"a": 0}.diff({"a":0}).unchangedKeys() == ["a"].toSet()