如何在后加载时调用vuejs中的方法?

时间:2017-06-30 13:03:09

标签: vue.js vuejs2 html-framework-7

我想在vuejs中调用一个方法,比如在页面加载后使用所有插件。我试着像这样打电话,

mounted: function mounted() {
          this.callToLoggedUser();
        },

当我尝试这样做时,f7实例得到了未定义。由于在挂载时调用了一个方法,之前没有机会加载f7,但是在onclick f7实例调用之后工作正常。

callToLoggedUser() {
f7.mainView.router.load({url: '/welcome/'});
}

如何在f7初始化后调用方法?

谢谢,

1 个答案:

答案 0 :(得分:3)

调用mount时,DOM尚未就绪。在DOM操作完成后,您应该尝试使用nextTick来调用:

https://vuejs.org/v2/guide/migration.html#ready-replaced

 mounted: function () {
  this.$nextTick(function () {
    this.callToLoggedUser();
  })
}

或者如果您只想调用一个函数,则可以使用更短的语法

 mounted: function () {
  this.$nextTick(this.callToLoggedUser)
}