Как вызвать крючок для часов в VueJS 3 - PullRequest
0 голосов
/ 09 мая 2020

Я работаю над приложением VueJS, в котором я хочу наблюдать за изменением состояния пользователя из хранилища vuex и что-то делать. Изменения происходят, но ловушка наблюдения не запускается.

Это код вычисляемого свойства и часов.

computed: {
    formIsValid() {
      return (
        this.form.company &&
        this.form.street &&
        this.form.phone &&
        this.form.selectedRole &&
        this.form.selectedStatus &&
        this.form.email &&
        this.form.industry &&
        this.form.password
      );
    },
    user() {
      this.$store.getters.getUser;
      console.log("Computed" + this.$store.getters.getUser.id);
    }
  },

  watch: {
    user(value) {
      console.log("A change has occured");
      console.log({ user: value });
      if (value !== null && value !== undefined) {
        console.log("ama is going");
        this.$router.push({ name: "Jobs" });
      } else {
        console.log("The thing is null");
      }
    }
  },

1 Ответ

1 голос
/ 09 мая 2020

В вашем вычисляемом методе user вы не return значение. Я подозреваю, что если вы посмотрите в Vue devtools, вычислено: пользователь имеет значение undefined.

Я считаю, что ваше изменение должно быть ...

computed: {
  user() {
    console.log("Computed" + this.$store.getters.getUser.id);
    return this.$store.getters.getUser;
  }
}
...