【发布时间】:2016-08-21 16:49:10
【问题描述】:
在我的简单 TODO 应用程序中,我有一个存储在本地存储中的数组列表。基本上它是任务列表。在删除任务时,我也想从本地存储中删除相同的任务。
JS 代码
$scope.addTask = function(){
localStorage.setItem("storedTasks", JSON.stringify($scope.tasks));
}; //function to add task
$scope.deleteTask = function(){
$scope.tasks.splice(this.$index, 1);
localStorage.removeItem("storedTasks");
}; // Function to delete a task from list
HTML
<div class="taskList">
<ol>
<li ng-repeat="task in tasks track by $index"> {{task}}
<i class="fa fa-trash-o" aria-hidden="true" ng-click="deleteTask()" data-toggle="tooltip" title="Delete Task"></i>
<i class="fa fa-pencil-square-o" aria-hidden="true" ng-click="editTask()"></i>
</li>
<p ng-show="tasks.length==0">No Tasks Available </p>
</ol>
</div>
当我使用 localStorage.removeItem() 时,它会清除整个数组,而不是我想要删除的任务。如何只删除点击删除的任务
【问题讨论】:
-
您应该必须获取变量中的值,然后删除特定值或任务,然后再次使用相同名称保存 localStorage
标签: javascript html arrays angularjs local-storage