为什么vue-property-decorator @Watch在路由推送后不起作用?

时间:2018-07-04 09:23:50

标签: javascript vuejs2 vuex

  1. 我承诺将一些东西存储到属性SomeVar
  2. 转到this.$router.push({name:"SomePage"})
  3. SomePage上,我在@Watch上有SomeVar,并且手表没有执行。
如果我在@Watch上进行操作,

SomeVarSomePage上工作。

代码:

1 + 2 search_.commitSetSomeVar(store, data); this.$router.push({name:"SomePage"}) 3。 get SomeVar() { console.log(search_.getSomeVar(store)) // it is doing console log after route change; return search_.getSomeVar(store); }

@Watch("SomeVar") somefunc() { console.log(this.SomeVar(store)) // nothing is logged }

1 个答案:

答案 0 :(得分:0)

某些页面未激活,如果未呈现,则不会执行。这就是观察者无法正常工作的原因。路由到SomePage后,它就会执行,并且观察者会执行他的工作。

我不知道您的设置,但是也许您可以使用v-show渲染组件?

因此它并不总是可见的,而是总是执行的。