Как удалить определенный элемент из массива локального хранилища в Angularjs?

0

Вот мой HTML:

 <tr ng-repeat="student in students track by $index">
             //some code here
           <button ng-click="remove(student)">Delete</button>
            </td>
        </tr>

И вот мой.js код файла для удаления ученика (не из локального хранилища):

$scope.remove = function(student) {
    var index = $scope.students.indexOf(student);
    $scope.students.splice(index, 1);
}

Как получить доступ к локальному хранилищу из моего js-кода и удалить конкретного ученика из локального хранилища.

  • 0
    Единственный способ удалить элемент localStorage - использовать localStorage.removeItem("studentKey"); Вы должны пройти через них и найти тот, который содержит данные, которые вы хотите стереть, но если данные будут повторяться, они пойдут не так ... Также вы можете попробовать просто перезаписать его (ноль) и затем проверить поле перед отображением данных.
  • 0
    @DIEGOCARRASCAL Я попытался добавить localStorage.removeItem ("studentKey"); к моему коду, но все равно он не будет работать, аргумент 'student', который я передал этой функции, содержит объект ученика, который должен быть удален, я что-то не так делаю?
Показать ещё 2 комментария
Теги:

1 ответ

1
Лучший ответ

Похоже, что вы должны перефразировать свой вопрос: "Как мне получить доступ к локальному хранилищу браузера из js-кода?"

Вы можете получить доступ к localStorage в вашем js-коде с помощью localStorage. Я бы удалил вашего ученика из $scope.students и когда закончите, установите новый массив как элемент в локальном хранилище:

$scope.remove = function(student) {
    var index = $scope.students.indexOf(student);
    $scope.students.splice(index, 1);
    localStorage.setItem('students', JSON.stringify($scope.students));
}
  • 0
    Привет, спасибо за ответ, я попробовал ваш код и добавил localStorage.setItem ('Students', $ scope.students); к моей функции, но элементы отображаются обратно после обновления.
  • 0
    Я использовал localStorage.setItem ('StudentsList', JSON.stringify ($ scope.students)); и это сработало, спасибо.
Показать ещё 2 комментария

Ещё вопросы

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