Angularjs - получить предыдущие состояния объекта

0

Я создаю компонент, где у меня есть несколько входов типа select, у них есть необходимые параметры. Когда используется обязательное поле, оно удаляется из массива обязательных полей и добавляется в массив requiredFieldsRemoved. Если я передумаю и выбрал другую опцию select, и я выберу поле, которое не требуется, я должен вернуть удаленный объект, нажатый в requiredFieldsRemoved, и вернул ему исходный массив requiredFields.

То, что я сделал, это добавить ng-change выбор ввода, который возвращает объект, который изменился, поэтому теперь мне нужно сохранить предыдущие состояния о различных изменениях, которые может выбрать select.

//@Param publicationObject: change object from UI
$scope.itemValue = function (publicationObject) {

    // get the index using lodash
    var idx = lodash.findKey($scope.requiredFields, {
        name: publicationObject.name
    });

    // here I have to check whether the object already suffered
    // changes above or if it his first change.
    // if it have change previously, i will check if that status match
    // to any object of the requiredFieldsRemoved array
    // and push it again to the requiredFields array, if not i just do nothing.
    //

    //if index is found, delete the item from required fields array
    if( idx !== undefined ) {
        $scope.requiredFields.splice(idx, 1);
        //add removed item to the requiredFieldsRemoved array
        requiredFieldsRemoved.push(publicationObject);

    }
};

Что я могу реализовать для получения этих предыдущих статусов?

  • 0
    $ scope.itemValue = function (publishingObject) {var oldValue = angular.copy (publishingObject)};
  • 0
    попробуйте использовать angular.copy для сохранения старого значения перед редактированием

1 ответ

0

попробуйте использовать угловую.копию

$scope.itemValue = function (publicationObject) {
    var oldValue = angular.copy(publica‌​tionObject) 
    //code
    }; 

Ещё вопросы

Сообщество Overcoder
Наверх
Меню