фреймворк 7 маршрутов - не работают обработчики событий - PullRequest
0 голосов
/ 11 сентября 2018

Моя простая цель - загрузить основной index.html и поверх него показать страницу входа, если пользователь еще не вошел в систему.По этой причине я определил следующий маршрут в моем маршрутизаторе приложения.

let routes = [
    {
        path: '/',
        url: './index.html',
        on: {
            pageInit: function (e, page) {
                if (localStorage.loggedIn != 1 || localStorage.loggedIn == 'undefined') {
                    this.navigate({ name: 'login' });
                }
            }
        }
    },
    ....

В целом, это работает, но с некоторыми недостатками.

  • Если пользователь переходит непосредственно к основному сайту, pageInit получен, и все в порядке.Но если пользователь переходит на main_site.com/index.html, pageInit не срабатывает (что, очевидно, нормально) и форма входа не появляется.
  • Я не получаю остальные события, например pageMounting, pageAfterIn и т. д. Я не могу понять, почему это так.

Кто-нибудь с идеями, что не так с моим подходом?

1 Ответ

0 голосов
/ 25 сентября 2018

если я прав, F7 ищет маршрут, не обязательно индексный файл soo согласно вашему сценарию, он показывает только маршрут с путем

path: '/'

, а не маршрут с путем

path: '/index.html'

, поэтому, когда вы вызываете main_site, он работает, потому что путь '/', а другой очевиден из-за отсутствия '/index.html' path

Мое предложение заключается в том, что вы придерживаетесь открытия через маршрутизируемыйпути, страницы не загружаются напрямую

...