Я пытаюсь вызвать мою функцию сопоставителя рекурсивно, но получаю сообщение об ошибке не определена: «ReferenceError: картограф не определен в Object.mapper»Как вызвать функцию рекурсивен
могли бы использовать некоторые рекомендации о том, как назвать функция рекурсивно в этой конкретной ситуации.
angular.module('dvb.transferObjects').value('MappedTransferObject', function(obj1) {
'use strict';
return {
mapper: function(obj2) {
for (var p in obj1) {
if (typeof obj1[p] === 'object') {
mapper(obj1[p], obj2[p]);
} else {
if(obj2.hasOwnProperty(p)) {
obj1[p] = obj2[p];
}
}
}
return obj1;
}
};
});
Я инъекционного это значение в моем контроллере как МТО и использовать его следующим образом:
var mto = new MTO(appState.getTemplateObject());
var mappedObject = mto.mapper($scope.dvModel);
thx, это решило это! –