@nuxt/auth $auth.LoggedIn не реагирует

#nuxt-auth

#nuxt-auth

Вопрос:

У меня есть две проблемы с @nuxt/auth, первая заключается в том, что $auth .LoggedIn не реагирует на изменения, у меня есть приведенный ниже код для моего приложения, и когда я вхожу в систему или выхожу из системы, мне нужно изменить маршрут, чтобы заголовок реагировал и менял состояние (скрывал или показывал логин / регистрацию и информацию о пользователе). ниже приведен мой код для шаблона.

 <userdown  @logout="$auth.logout()" v-if="$auth.loggedIn"/>
<div v-else>
  <nuxt-link :to="localePath('/login')" class="text-white mx-4">
    {{$t("links.login")}}
  </nuxt-link>
  <nuxt-link :to="localePath('/register')" class="text-white mx-4">
    {{$t("links.register")}}
  </nuxt-link>
</div>
 

Во-вторых, перенаправление не работает автоматически (например, при входе в систему оно должно перенаправлять на домашнюю страницу, но ничего не происходит).

 auth: {
    strategies: {
      local: {
        token: {
          property: 'token'
        },
        user: {
          property: 'user'
        },
        endpoints: {
          login: { url: '/api/auth/login', method: 'post' },
          logout: { url: '/api/auth/logout', method: 'post' },
          user: { url: '/api/auth/user', method: 'get' }
        }
      }
    },
    redirect: {
      login: '/login',
      logout: '/',
      callback: '/login',
      home: '/'
    }
}

 

Ответ №1:

Я столкнулся с той же проблемой в процессе производства. Локально все работает так, как ожидалось. В любом случае, я закончил тем, что использовал:

 v-show="$store.state.auth.loggedIn"