Как загрузить определенный маршрут в приложение Electron Activate Event

Мне очень трудно понять, как загрузить конкретный маршрут при срабатывании события activate. Я создаю приложение Electron, используя структуру Electron-Vue, и у меня есть следующие маршруты:

export default [
  {
    path: '/',
    name: 'login-page',
    component: require('components/LoginPageView')
  },
  {
    path: '/tracker',
    name: 'tracker-page',
    component: require('components/TrackerPageView')
  },
  {
    path: '*',
    redirect: '/'
  }
]

Теперь я хотел бы загрузить маршрут /tracker после того, как app.on('activate') будет запущен на следующем:

app.on('activate', () => {
  if (mainWindow === null) {
    createWindow()
  }
})

Основная причина этого в том, что я создаю двухоконное приложение Electron. Первое окно - это логин, а второе - профили пользователей. Когда пользователь уже вошел в систему и закрыл приложение с помощью кнопки закрытия системы, приложение остается на панели Dock, а при нажатии на приложение запускается событие Electron activate и снова отображается экран входа в систему. Поскольку пользователь уже вошел в систему, я не хочу, чтобы пользователь снова отображал окно входа в систему. Любое предложение будет оценено по достоинству.


person Md Mazedul Islam Khan    schedule 21.03.2017    source источник


Ответы (1)


Я наконец смог добиться этого, используя Vue- Router Per-Route Guard beforeEnter метод. Вот мой черновик:

let auth = true

export default [
  {
    path: '/',
    name: 'login-page',
    component: require('components/LoginPageView'),
    meta: {
      auth: false
    },
    beforeEnter: (to, from, next) => {
      if (auth) {
        next('/tracker')
      } else {
        next()
      }
    }
  },
  {
    path: '/tracker',
    name: 'tracker-page',
    component: require('components/TrackerPageView'),
    meta: {
      auth: true
    }
  },
  {
    path: '*',
    redirect: '/'
  }
]

Любые отзывы приветствуются, чтобы улучшить это еще лучше :)

person Md Mazedul Islam Khan    schedule 22.03.2017