С get параметрами мне все понятно, с путями и URL тоже.
Вопрос простой - пишу в браузере mydomain.ru/MYDIR/about, жму enter и хочу попасть на about.html в папке pages. как будто я просто нажал на линк /about/
прописал абсолютные пути в роутере, сделал редирект на index.html, включил pushState и указал root директорию
Я понял что Вы имели ввиду. При редиректе на index я просто активирую обработку маршрутов от корня, но запускать роутер нужно самостоятельно, app.router, указав параметры запуска. Так?
Мне кажется я должен сам ловить url (в данном случае путь из строки браузера document.location.href), и дальше вызывать роутер с параметрами, т.к. автоматически это не делается, правильно?
app.view.main.router.navigate(app.views.main.router.currentRoute.path) - решил бы вопрос, но после того, как происходит редирект на index.html теряется начальный URL
а зачем мне использовать стороннюю библиотеку для парсинга, если F7 делает это сам по ссылке /users/:user/:userId/:posts/:postId/? Я думаю, что могу отправить этот путь роутеру и он сам выдаст результат.
Может я неправильно делаю редирект?
После редиректа меняется pushState в строке браузера, но не работает роутинг - всё время первая страница. Как мне достучаться от адресной строки браузера до роутинга?
хорошо. Я буду думать как это реализовать. Это получается нужно делать свои маршруты на сервере…
А как такая в принципе нужная штука делается “из коробки”? Я так понял есть возможность отображения пути в строке браузера, но как получить обратную возможность - роутинг по указанному в строке пути. Может есть примеры?
ну я так и сделал, выходит это ошибочно? Хотя, по идее, я передаю управление app.js, он смотрит app.views.main.router.currentRoute.path или window.location.pathname и запускает app.view.main.router.navigate(полученный путь), пытаясь загрузить страницу с URL, назначенным этому пути в routes.js. PushState пишет новый путь. Но тут опять срабатывает редирект, это замкнутый круг.
Выходит мне нужен редирект только при команде из строки браузера, а при программном переходе через роутер - нет.
К томуже при редиректе теряется url и app.js уже получает начальный путь - ‘/’
Ну нужно делать как я показал, он не должен всё редиректить. То что грузится роутером не нужно. Если все страницы (html) лежат в папке, то можно настроить что если запрос к этой папке то отдавать как есть
дальше управление переходит к app.js. так? Он смотрит путь в браузере, а там то уже рут! Он не знает что нужно запустить about. Вот я и спрашиваю, как при редиректе передать путь для правильного дальнейшего запуска роутера
дальше управление переходит к app.js. так? Он смотрит путь в браузере, а там то уже рут! Он не знает что нужно запустить about. Вот я и спрашиваю, как при редиректе передать путь для правильного дальнейшего запуска роутера