前端页面点击刷新-触发vue生命周期加载最新数据

需求背景:layout布局,页面头部通过定时器获取后端消息的伪消息通知功能,在点击消息时获取所有消息总数并且刷新页面,以便触发vue的生命周期重新获取所有消息,消息展示在content中。

 要触发页面刷新,可以使用vue路由的router.push方法,添加一个动态的query参数,可以用一个随机数或当前时间戳,样每次路由跳转时,查询参数的值都会发生变化,从而强制刷新页面。

代码示例:

function handleMessage() {
  const timestamp = Date.now(); // 获取当前时间戳
  router.push({ path: "/message", query: { timestamp } });
}

在上面的代码中,我们使用`Date.now()`获取当前时间戳,并将它作为查询参数传递给`router.push`方法。这样每次点击按钮时,路由跳转的URL都会带有一个新的时间戳查询参数,从而导致页面刷新。

在`/message`页面中,通过`this.$route.query.timestamp`来获取传递的时间戳查询参数,并在页面加载时进行相应的处理。这种方法会导致每次点击按钮都进行完整的页面刷新,可能会影响性能。请根据实际需求和页面复杂度来决定是否使用此方法。

你可能感兴趣的:(前端)