methods: {
  someMethod(){
    setInterval(function () {
    console.log('30秒毎に処理')
      setTimeout(
        function() {
          console.log('5秒後に処理')
          setTimeout(
            function() {
              console.log('4秒後に処理')
            }.bind(this),
            4000
          );
        }.bind(this),
        5000
      );
    }.bind(this), 30000)
  },

Vue.jsのmethodでsetInterval、setTimeoutを使う場合は、それぞれに「.bind(this)」をつける必要がありました。それがあれば普通のJAVASCRIPTと同じように使えます。App.vueのmountedに書いてあれば、ルートに関係なく新着情報をチェックするポーリングなどを実装できます。