Почему мое вычисляемое свойство auth не обновляет мое дерево DOM? - PullRequest
0 голосов
/ 23 января 2020

Я создал интерфейс nuxt с функциями аутентификации на основе модуля nuxt-apollo . Мой макет будет меняться в зависимости от того, вошел ли пользователь в систему или нет. Для этого у меня есть простой v-if=isAuthenticated в моем макете. Вот код ниже:

<template>
  <v-app>
    <!-- authenticated user -->
    <template v-if="isAuthenticated">
      <v-content>
        <v-container>
          <v-row>
            <v-col>
              <v-fade-transition mode="out-in">
                <nuxt />
              </v-fade-transition>
            </v-col>
          </v-row>
        </v-container>
      </v-content>
    </template>
    <!-- unauthenticated user -->
    <template v-else>
      <v-content>
        <v-container>  
          <v-fade-transition mode="out-in">
            <nuxt />
          </v-fade-transition>
        </v-container>
      </v-content>
    </template>
  </v-app>
</template>

<script>

export default {
  data() {
    return {

    };
  },
  computed: {
    isAuthenticated() {
      return !!this.$apolloHelpers.getToken();
    }
  }
};
</script>

!!this.$apolloHelpers.getToken() - это то, что используется в промежуточном программном обеспечении из примера приложения auth для разрешения или запрета аутентифицированных маршрутов.

Проблема: Когда пользователь входит в систему и установлен токен, вычисляемое свойство не выполняется повторно и макет не обновляется. Тем не менее, он корректно отображает, если я обновлю sh страницу.

Я ранее использовал модуль nuxt auth , и он работал нормально при использовании их помощника v-if="$auth.loggedIn" для переключения.

Поскольку я совсем новичок в Vue, я подумал, упускаю ли я очевидное или нет, как мне поступить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...