vue项目中如何刷新当前路由

最近在项目中使用iview框架,用到了里面的select组件,发现这个组件在做国际化的时候,select选中的内容并没有变成中文,只有刷新页面才能变成中文,于是网上搜了一些教程,貌似iview官方给出的说法就是谁没事一直点切换语言啊,选完长期就不会变了,所以刷新并没有什么问题。,但是直接刷新整个页面感觉不是很友好,所以能单独刷新整个content的组件是最好的选择,最后发现两个很好的刷新路由的方法,在这里记录一下。
第一种方法:
在需要刷新的路由的route-view 用v-if=“reload”.
reload 默认为true;这时候这个页面的dom是正常渲染的。
当你需要刷新的时候,直接 this.reload=false;然后再reload=true;
当你reload=false的时候,页面的dom都被清除掉了。reload=true又重新渲染。就可以刷新本页。浏览器的回退也没有影响。
第二种方法:
通过改变router-view中的key来达到刷新组件的目的
<router-view :key="reload"></router-view>
默认让key等于当时的时间戳,当切换语言的时候改变时间戳为现在的时间戳,同样也可以达到刷新路由的目的
this.reload = new Date().getTime();

推薦閱讀更多精彩內容

  • 我是日记星球205号星宝宝程程,我正在参加第15期复训,这是我第162篇日记! 理想很丰满,现实很骨感!为这事今天...
    程程百合閱讀 16評論 2 2
  • 这几天,关心西冶抬妆的人越来越多,抬妆就像一把火,沸腾了西冶这口沉寂的锅,微信发,朋友圈转,西冶抬妆得以广...
    找祢真难閱讀 3,191評論 0 10
  • 这两天帮我弟填报中考志愿,差点没把自己气死。深户与非深户的差别实在太大,好的学校倒是只有一两分之差,比较好且不是民...
    Amy_zZL閱讀 10評論 0 0
  • 不知不觉啊,已经在大专呆了一年半了啊。每天在死循环里蹉跎时光。想要好好努力,一直告诫自己要坚定,可是却抵制不住诱惑...
    希望小姐閱讀 177評論 1 1