قواعد . MapDiff
نوع MapDiff.
يمثل نوع MapDiff نتيجة مقارنة كائنين من القواعد.Map .
لا يوجد حرف MapDiff لاستخدامه في إنشاء الاختلافات. يتم إرجاع كائنات MapDiff عن طريق استدعاء الدالة القواعد.Map#diff .
يتم استدعاء وظائف MapDiff الموضحة أدناه عن طريق التسلسل مع القواعد.Map#diff . تقوم كافة وظائف MapDiff بإرجاع القواعد. قم بتعيين الكائنات التي تسرد المفاتيح مقارنة بين كائنات الخريطة.
// 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"]);
طُرق
addKeys
addKeys () تُرجع القواعد.Set
تُرجع القواعد.Set ، التي تسرد أي مفاتيح يحتوي عليها Map يستدعي diff()
ولا تحتوي عليها الخريطة التي تم تمريرها إلى diff()
.
- عائدات
non-null rules.Set
، قائمة المفاتيح المضافة إلى القواعد.تم تمرير الخريطة إلى وظيفةMap.diff()
.
مثال
{"a":1}.diff({}).addedKeys() == ["a"].toSet()
com.factKeys
تُرجع FactedKeys () القواعد.Set
تُرجع القواعد.Set ، التي تسرد أي مفاتيح تمت إضافتها إلى الخريطة أو إزالتها منها أو تعديلها منها، مما يستدعي diff()
مقارنة بالخريطة التي تم تمريرها إلى diff()
. تُرجع هذه الدالة المجموعة المكافئة للنتائج المدمجة لـ MapDiff.addedKeys()
و MapDiff.removedKeys()
و MapDiff.changedKeys()
.
({"a":0, "c":0, "u":0}).diff({"r":0, "c":1, "u": 0}).affectedKeys() == ["a", "r", "c"].toSet()
- عائدات
non-null rules.Set
. قم بتعيين قائمة المفاتيح التي تمت إضافتها إلى القواعد أو إزالتها منها أو تغييرها. تم تمرير الخريطة إلى وظيفةMap.diff()
.
ChangeKeys
ChangeKeys () تُرجع القواعد.Set
تُرجع القواعد.Set ، التي تسرد أي مفاتيح تظهر في كل من استدعاء الخريطة diff()
والخريطة التي تم تمريرها إلى diff()
، ولكن قيمها غير متساوية.
- عائدات
non-null rules.Set
، قائمة المفاتيح التي تظهر في كلتا القاعدتين.Map s ولكن قيمها غير متساوية.
مثال
{"a":0}.diff({"a":1, "b":4}).changedKeys() == ["a"].toSet()
RemoveKeys
RemoveKeys () ترجع القواعد.Set
تُرجع القواعد.Set ، التي تسرد أي مفاتيح لا يحتوي عليها استدعاء الخريطة diff()
مقارنة بالخريطة التي تم تمريرها إلى diff()
.
- عائدات
non-null rules.Set
، قائمة المفاتيح التي تمت إزالتها من القواعد.تم تمرير الخريطة إلى وظيفةMap.diff()
.
مثال
{}.diff({"a":1}).removedKeys() == ["a"].toSet()
unchangedKeys
unchangedKeys () ترجع القواعد.Set
تُرجع القواعد.Set ، التي تسرد أي مفاتيح تظهر في كل من استدعاء الخريطة diff()
والخريطة التي تم تمريرها إلى diff()
، والتي تكون قيمها متساوية.
- عائدات
non-null rules.Set
، قائمة المفاتيح التي تظهر في كلتا القاعدتين.Map s ولكن قيمها متساوية.
مثال
{"a": 0}.diff({"a":0}).unchangedKeys() == ["a"].toSet()