Таблица Session или LocalStorage CRUD в AngularJS - PullRequest
0 голосов
/ 09 ноября 2018

Я создаю веб-страницу CRUD, используя angularjs и localalstorage. Функции добавления, редактирования и удаления работают отлично. Я смог использовать localstorage и сохранить данные после добавления или удаления пользователя.

Но я не могу сохранить отредактированные данные пользователя на локальном хранилище. Они стираются при обновлении веб-страницы. $ scope.selectUser - это функция, которую я использую для редактирования пользователя. Заранее спасибо.

var myApp = angular.module("myApp", []);


myApp.controller("myController", function ($scope) {
    console.log("in controller...");
    $scope.newUser = {};
    $scope.info = "";

    if (localStorage.getItem("users") === null) {
        $scope.users = [
            { email: "John@yahoo.com", firstName: "John", lastName: "Doe", contact: "281-283-2480", role: "Supplier-Admin", company: "Apple" },
            { email: "Rick@yahoo.com", firstName: "Rick", lastName: "Fraiser", contact: "987-283-2489", role: "Supplier-User", company: "Apple" },
            { email: "Sam@yahoo.com", firstName: "Sam", lastName: "Tarly", contact: "456-786-2480", role: "BuyerAdmin", company: "Samsung" }
        ];
        localStorage.setItem("users", JSON.stringify($scope.users));
    } else {
        $scope.users = JSON.parse(localStorage.getItem("users"));
    }


    $scope.saveUser = function () { 
        console.log("Saving...");
        $scope.users.push($scope.newUser);
        $scope.info = "New User Added Successfully!";
        $scope.newUser = {};
        localStorage.setItem("users", JSON.stringify($scope.users));
        //localStorage.setItem("email", $scope.users);
    };

    $scope.selectUser = function (user) {
        $scope.clickedUser = user;
        localStorage.setItem("users", JSON.stringify($scope.users));
    };

    $scope.deleteUser = function () {
        console.log($scope.users.indexOf($scope.clickedUser));
        $scope.users.splice($scope.users.indexOf($scope.clickedUser), 1);
        localStorage.setItem("users", JSON.stringify($scope.users));
        $scope.info = "User Deleted Successfully!";
        
    };        

    $scope.clearInfo = function () {
        $scope.info = "";
    };
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...