Model-View

0

Cześć. Problem polega na tym że nie mogę odwołać się do obiektu. Chcę edytować dane i zrobić z tego formularz z dwustronnym wiązaniem, a następnie ten zmieniony obiekt postować dalej. Jeżeli wciskam edytuj to w logach widzę że ten obiekt istnieje i ma te dane co powinien mieć, aczkolwiek nie mogę tego przekazać ponownie do widoku. Próbowałem z $watch i bez większych rezultatów.

var application = angular.module('myModule', []);

application.controller("AuthorsController", function ($scope, $http, $timeout) {
    var authors = [];
    var editAuthor = {};
    $http.get('http://localhost:8080/authors')
        .then(function (response) {
            angular.forEach(response.data, function (value, index) {
                authors.push({ id: value.id, author: value.author, birth: value.birth, gender: value.gender });
            });
        });
    $scope.update = function (index) {
        for (var i=0; i<authors.length; i++)
        {
            if (authors[i].id == index)
            {
                editAuthor = { id: authors[i].id, author: authors[i].author, birth: authors[i].birth, gender: authors[i].gender };
                break;
            }
        }
        $scope.edit = editAuthor;
        console.log($scope.edit);
    };

    $scope.IsVisible = false;
    $scope.ShowHide = function () {
            $scope.IsVisible = $scope.IsVisible ? false : true;
    }

    $scope.authors = authors;
});

Widok: http://pastebin.com/qarNTB3d

0

Tylko że ja nie mam problemu z pobieraniem danych. Tabela mi się normalnie ładuje, dane tam są. Wciskam buttona, widzę w logach że zaznaczam faktyczny obiekt z którym nic nie mogę zrobić. Obowiązkowe przejrzę.

0

MOże

editAuthor =authors[i];

zamiast
editAuthor = { id: authors[i].id, author: authors[i].author, birth: authors[i].birth, gender: authors[i].gender };

1 użytkowników online, w tym zalogowanych: 0, gości: 1