Проблемът е, че използвате случаен идентификатор всеки път в извикването на added
така че клиентът винаги смята, че всички документи са уникални. Трябва да измислите последователен id генератор на низове. Използване на отговор на този въпрос , можете да си представите изграждането на набор от функции като тези:
hashCode = function (s) {
return s.split('').reduce(function (a, b) {
a = ((a << 5) - a) + b.charCodeAt(0);return a & a;
}, 0);
};
objectToHash = function (obj) {
return String(hashCode(JSON.stringify(obj)));
};
Така че, ако искате уникален документ за всяка комбинация от code
и hour
можете да направите това:
var id = objectToHash(r._id);
this.added('totalNumber', id, {...});