Код: Выделить всё
function resetChallenge() {
challengeTitle.textContent = "Challenge not set";
challengeDescription.textContent = "Set your challenge above";
progressFill.style.width = '0%';
progressText.textContent = '0%';
badgeContainer.innerHTML = '';
challengeCompleted = false;
updateProgress(0);
localStorage.removeItem('spendSmartState');
}
< /code>
Проблема в том, что когда я обновляю страницу, значки возвращаются. Кажется, что их перезагружают из LocalStorage внутри моей функции LoadBadges (). Я подозреваю, что это потому, что я не сбросил Badgesarned, которая является глобальной переменной, используемой для отслеживания того, сколько значков пользователь разблокировал.function init() {
const savedState = JSON.parse(localStorage.getItem('spendSmartState'));
if (savedState) {
challengeCompleted = savedState.challengeCompleted;
updateProgress(savedState.progress || 0);
loadBadges(savedState.badgesEarned || 0);
}
}
< /code>
Я хочу: < /strong> < /p>
Убедитесь, что Resetchallenge () правильно очищает все, чтобы пользователь начинал свежо. < /li>
Необязательно, обеспечить «жесткое сброс» на обновлении, если необходимо, без переключения старого штата из локального старого. Сброс Badgesearned = 0
Подробнее здесь: https://stackoverflow.com/questions/795 ... s-and-badg