只是一个简单的问题。
你能强迫Vue.js重新加载/重新计算所有内容吗?如果有,怎么做?
只是一个简单的问题。
你能强迫Vue.js重新加载/重新计算所有内容吗?如果有,怎么做?
当前回答
对于那些还在四处寻找的人来说,现在有一个包。
https://github.com/gabrielmbmb/vuex-multi-tab-state
我所要做的就是安装它,并将它添加到我的插件中。ts(就像它在那个页面上显示的那样),它确实做了我想要的。
其他回答
使用v-if指令
<div v-if="trulyvalue">
<component-here />
</div>
因此,简单地将truyvalue的值从false更改为true将导致div之间的组件重新渲染
添加以下代码:
this.$forceUpdate()
如果您正在使用路由器视图或Vue路由器,您可以直接使用关键功能
<router-view :key="$route.path"></router-view>
这将告诉路由器视图在每次路径改变时重新渲染页面。
尝试使用这个。$router.go(0);手动重新加载当前页面。
除了页面重载方法(闪烁),没有一个适合我(:键没有工作)。
我发现这个方法从旧vue.js论坛,这是为我工作:
https://github.com/vuejs/Discussion/issues/356
<template>
<div v-if="show">
<button @click="rerender">re-render</button>
</div>
</template>
<script>
export default {
data(){
return {show:true}
},
methods:{
rerender(){
this.show = false
this.$nextTick(() => {
this.show = true
console.log('re-render start')
this.$nextTick(() => {
console.log('re-render end')
})
})
}
}
}
</script>