0
У меня есть две коллекции объектов. Я итерацию корыто коллекции A, и я хочу, когда ObjectId от A соответствует ObjectId из B, чтобы обновить этот объект в коллекции В.Обновить объект коллекции с помощью подстроки/подлодки
Вот что я получил до сих пор:
var exerciseIds = _(queryItems).pluck('ExerciseId').uniq().valueOf();
var item = { Exercise: null, ExerciseCategories: [] };
var exerciseAndCategories = [];
//this part works fine
_.forEach(exerciseIds, function(id) {
var temp = _.findWhere(queryItems, { 'ExerciseId': id });
item.Exercise = temp.Exercise;
exerciseAndCategories.push(item);
});
//this is problem
_.forEach(queryItems, function (i) {
_(exerciseAndCategories).where({ 'ExerciseId': i.ExerciseId }).tap(function (x) {
x.ExerciseCategories.push(i.ExerciseCategory);
}).valueOf();
});
EDIT
Ссылка на Fiddle
Не помогло, когда я пишу эту строку кода: Logger.log (exerciseAndCategories) ;, я могу видеть, что ExerciseCategories: все еще пусты, поэтому коллекция exerciseAndCategories не была обновлена – hyperN
Обновлены скрипка. Нужно «возвращать» из 'tap' – kalley
Спасибо за скрипку, но я не получил результат, которого я ожидал, может быть, мой вопрос был недостаточно ясен, я отредактировал свой бит скрипта и добавил комментарий о том, как я хочу, чтобы результат выглядел как – hyperN