Почему js невсегда меняет тему при загрузке страницы?

Есть вот такой переключатель тем на сайте:

введите сюда описание изображения

Вот код его работы:

//Добавление события на переключатель
const switchTumblerHandler = () => {
const wrapper = document.querySelector('.tumbler__wrapper');
    wrapper.addEventListener('click', () => {
    toggleNightMode();
    });
}; 

//Переключает темы и меняет сам тумблер если theme в coockie == "dark"
const toggleNightModeLoad = () => {
    document.body.classList.toggle('body--night-mode');
    document.querySelector('.tumbler').classList.toggle('tumbler--night-mode');
    document.querySelectorAll('.post').forEach(post => {
        post.classList.toggle('post--night-mode');
    });
};

//Переключение тем при нажатии на тумблер
const toggleNightMode = () => {
    document.body.classList.toggle('body--night-mode');
    document.querySelector('.tumbler').classList.toggle('tumbler--night-mode');
    document.querySelectorAll('.post').forEach(post => {
        post.classList.toggle('post--night-mode');
    
    });
    let theme_click = getCookie("theme");
    //Проверка какая тема в печенюхах и выставление обратной туда
    if (theme_click == "lite"){
        let date = new Date(Date.now());
        date.setFullYear(date.getFullYear + 12);
        date = date.toUTCString();
        document.cookie = "theme=dark; path=/; expires="+date;
    
    }else{
        let date = new Date(Date.now());
        date.setFullYear(date.getFullYear + 12);
        date = date.toUTCString();
        document.cookie = "theme=lite; path=/; expires="+date;
    };
    };



// возвращает куки с указанным name,
// или undefined, если ничего не найдено
function getCookie(name) {
    let matches = document.cookie.match(new RegExp(
        "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
    ));
    return matches ? decodeURIComponent(matches[1]) : undefined;
};

//Проверяет и вызывает переключение при загрузке, если в печеньках 'dark'
var theme = getCookie("theme");
if (theme == "dark"){
    toggleNightModeLoad();
}

//Вызов функции с добавлением события
switchTumblerHandler();

Проблема в том, что при загрузке страницы невсегда переключается тема на dark, хотя в куки она была задана. Как это исправить? Может где-то допустил глупую ошибку(что для меня свойственно??)? Помогите, пожалуйста!


Ответы (0 шт):