在Vue方法上运行setInterval

时间:2017-11-11 15:39:34

标签: javascript api vue.js setinterval

document.addEventListener("DOMContentLoaded", function(event) { 
  var app = new Vue({
    el: '#app',
    data: {
      posts: {}
    },
    mounted: function() { 

    },
    methods: {
      updatePosts: function () {
        $.get('/api/v1/posts',function(response){
          this.posts = response.data;
          setInterval(this.updatePosts, 10000);
        }.bind(this));
      };      
    },
    created: function () {
      this.updatePosts();
    }
  });
});

我正在进行api调用,并希望每10秒运行一次updatepost方法。目前,它运行除了10秒计时器在每次重新加载页面时重置。我将如何每10秒运行一次此功能,但不会在页面刷新时运行?

1 个答案:

答案 0 :(得分:-1)

我不确定我是否正确理解您的问题,如果页面刷新,您想要停止updatePosts调用,也许您可​​以使用路由参数来允许创建的事件仅在所述param存在时触发updatePosts。