Как напрямую перенаправить пользователя на домашнюю страницу, если пользователь уже вошел в nativescript-vue? - PullRequest
0 голосов
/ 20 февраля 2019

Я хочу перенаправить пользователя на домашнюю страницу, если он уже вошел в систему, в противном случае - на страницу входа.

Как я могу решить эту проблему в nativescript-vue?

Ответы [ 3 ]

0 голосов
/ 21 февраля 2019

Вы также можете проверить базу данных (например, sqlite или loki) на статус входа в систему, в моем случае я проверяю db из app.js, затем, если статус равен 1, перейти на домашнюю страницу, иначе перейти на страницу входа, не использую {N} vueно простой (vanilla Js), но тот же самый, код Heres из App.js

if (  model.isAvailable ==true) {
    var whichPage=true;
    console.log(" User found");
}else{
    whichPage=false;
        console.log("Going to Acount page !");
}

var pageToload= whichPage ? "home":"status";
application.start({ moduleName: pageToload })
;```
Change it to how you like to handle it, model.isAvaillable() is a function that checks the Db for login status
0 голосов
/ 26 февраля 2019

Vue Router сейчас не поддерживается в соответствии с документацией (https://nativescript -vue.org / ru / docs / routing / vue-router / ).

Вы можетевероятно, достигните того, что вы пытаетесь сделать, с чем-то вроде этого:

const token = localStorage.getItem('token')

const shopId = localStorage.getItem('shop_id')

let userLoggedIn = false

if (token && shopId) { userLoggedIn = true }

new Vue({ render: h => h('Frame', [h(userLoggedIn ? Home : App)]) }).$start()

Я пытался использовать логику, предоставленную вами 2 / 20.

0 голосов
/ 20 февраля 2019

Я предполагаю, что вы передаете компонент Login функции рендеринга в app.js.Вы можете написать оператор условия там, передать компонент Home, если пользователь уже вошел в систему.

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

...