iT邦幫忙

2024 iThome 鐵人賽

DAY 18
0

Todo List專案–使用localStorage儲存待辦事項

今天我的目標是讓待辦事項在頁面重新載入後依然存在,這可以通過 localStorage 來實現。localStorage 是一個可以儲存在瀏覽器中的資料儲存機制,允許保存待辦事項的狀態,即使使用者關閉或重新載入頁面,資料也不會丟失。

首先,需要在每次新增或刪除待辦事項後,更新儲存在 localStorage 中的資料。可以將待辦事項保存為一個陣列,並在每次更新時將它存入localStorage:

function updateStorage() {
    const items = [];
    document.querySelectorAll("#todo-list li").forEach(item => {
        items.push(item.firstChild.textContent);  // 儲存每一個待辦事項的文字
    });
    localStorage.setItem("todos", JSON.stringify(items));  // 將陣列轉成字串儲存
}

每次在新增或刪除待辦事項時,都會呼叫updateStorage,將當前待辦事項的狀態更新到localStorage中。

同時,當頁面加載時,需要從localStorage中讀取之前儲存的待辦事項,並將它們顯示出來:

window.addEventListener("load", function() {
    const savedTodos = JSON.parse(localStorage.getItem("todos")) || [];
    savedTodos.forEach(todo => addItem(todo));
});

上一篇
# JavaScript入門教學Day17
下一篇
# JavaScript入門教學Day19
系列文
解鎖第一個人生成就清單:Javascript鐵人學習19
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言