Мне нужен роутер на ванильном js-e для spa сайта.
Вот на хабре нашел вроде как идеальную реализацию, но есть одна проблема. Эта реализация, да и все что я нашел в интернете хорошо работают только с hash, через history api который нужен мне, они отказываются работать подскажите что я делаю не так, или подскажите другую рабочую реализацию.
Итак я просто беру код класса
Router, и задаю нужные мне роуты:
const router = new Router({
mode: 'history',
root: '/'
});
router
.add('', () => {
console.log('deafult page');
}).add('settings', () => {
console.log('settings page');
}).add(/task-list/, () => {
console.log('task-list page');
})
Выполняется только
deafult page
если я введу в строке
http://localhost:3000/settings
то мне выдаст
Cannot GET /settings
если я повешаю через клик событие
document.addEventListener('click',()=>router.navigate('settings'))
то переход на страницу настроек произойдет, но при этом код
console.log('settings page');
не отработает