typescript Angular 本地存储删除不删除项目

ntjbwcob  于 2022-12-05  发布在  TypeScript
关注(0)|答案(1)|浏览(125)

你好,我正在学习Angular ,我正在开发一个存储到本地存储的待办事项应用程序。让本地存储删除单个项目以及编辑项目一直是一个挑战,我没有找到很多好的资源。
现在它看起来像是删除了整个数组,我不知道为什么。希望我已经包括了正确的细节。
这是我在CRUD任务中的删除/移除

deleteTask(task : Task) {
    localStorage.removeItem(this.taskKey)
  }

这是组件中的删除任务

deleteTask(idx: number) {
    this.taskService.deleteTask(new Task(this.addTaskValue))
    if( idx >= 0) {
      this.taskArr.splice(idx, 1);
    }
  }

组件的其他详细信息

taskArr: Task[]; 

  public addTaskValue: string = '';

  constructor(private taskService: TaskService) {}

  ngOnInit(): void {
    this.addTaskValue = '';

    this.taskArr = this.taskService.getAllTasks();

    }

Local Storage Image
我试过在deleteTask中使用splice,但这只是将其从屏幕中删除,而不是从本地存储中删除。我也试过其他一些方法,但无法详细回忆起它们。

pdtvr36n

pdtvr36n1#

在上面的代码中,你提供了。我甚至没有看到设置taskKey的逻辑。我会添加一些控制台语句,看看你是否在this.taskKey中得到了正确的字符串。

deleteTask(task : Task) {
    console.log(this.taskKey); // check if this value is "tasks"
    localStorage.removeItem(this.taskKey)
}

从本质上讲,它需要归结为这个。

localstorage.removeItem('tasks').

相关问题