When I login using a form this happens:
- loggedIn value in localStorage is changed to "true"
- Router pushes to /home
- Header doesn't change and still shows Login/Signup buttons
I need it to be
- loggedIn value in localStorage is changed to "true"
- Router pushes to /home
- Header changes and a picture
Header.vue:
      <div class="flex flex-wrap items-center justify-end ">
        <HeaderItem v-if="!isLoggedIn"
            class="pl-10" text = "Login" link="/login"/>
        <HeaderItem v-if="!isLoggedIn" class="pl-10"
                    text = "Signup" link="/signup"/>
        <div v-if="isLoggedIn">
          <UserHeader/>
        </div>
      </div>
export default {
  name: 'App',
  components: {HeaderItem, UserHeader},
  data() {
    return {
      homeLink: "/home"
    }
  },
  created: {
    isLoggedIn() {
      console.log(JSON.parse(localStorage.getItem("loggedIn")) === "true");
      if (localStorage.getItem("loggedIn") === "true")  {
        console.log("STORAGE LOGGED IN TRUE");
      }
      else  {
        console.log("STORAGE LOGGED IN FALSE");
      }
      return localStorage.getItem("loggedIn") === "true";
    }
  }
}
It only prints the correct message and changes header after I press Ctrl+Shift+R. But the localStorage has the correct loggedIn value right away. How do I fix it?
EDIT:
I also tried this:
  <div class="flex flex-wrap items-center justify-end ">
        <HeaderItem v-if="!loggedIn"
            class="pl-10" text = "Login" link="/login"/>
        <HeaderItem v-if="!loggedIn" class="pl-10"
                    text = "Signup" link="/signup"/>
        <div v-if="loggedIn">
          <UserHeader/>
        </div>
      </div>
export default {
  name: 'App',
  components: {HeaderItem, UserHeader},
  data() {
    return {
      homeLink: "/home",
     // loggedIn: false
    }
  },
  computed: {
    loggedIn() {
      return localStorage.getItem("loggedIn") === "true";
    },
...
It has the same results: the header only changes after the page refresh (Ctrl+Shift+R).
EDIT:
I can't set localStorage.loggedIn inside Header! It is set in LoginForm.vue, completely different component
 
     
    