Sveltekit оказывается на той же странице

Следующий код (Index.svelte)

В Sveltekit, когда я пытаюсь войти в систему и перенаправить на другую страницу ('/success'), следующий код переходит на страницу ('success') и немедленно возвращается на страницу Login.svelte. Мне нужно, чтобы страница успеха оставалась для пользователя.

      <script >
    import { session } from '$app/stores';
    import { goto } from '$app/navigation';
    import { post } from '$lib/utils.js';

    import Login from '$stories/Login/Login.svelte';

    async function signingIn(event) {
        const username = event.detail.username;
        const password = event.detail.password;
        try {
            const response = await post(`api/login`, { 'username': username, 'password': password });
            if (response.loggedin == 'true') {
                goto('/success')    
            }
            goto('/failure')
        } catch (e) {
            alert("Error occurred " + e );
        }
    }
</script>

<main >
    <Login on:signingIn={signingIn}/>
    <p> {$session.username} </p>
</main>

Не уверен, какую ошибку я здесь делаю. При отладке с помощью предупреждающих сообщений я вижу, что часть кода, успешная или неудачная, выполняется в зависимости от ответа сервера.

0 ответов

Другие вопросы по тегам