如何在vue中复制组件状态?

时间:2020-09-25 03:15:53

标签: vue.js vuejs2 vuex vuetify.js vue-router

我的目标是在vue.js应用程序中创建多个工作空间,其中将有许多表格。切换工作空间时,应保留该路由的状态(如未保存的表单输入)。

我尝试像这样使用 tab

<tabs>
    <tab name="W1">
        This is the content of the first tab
    </tab>
    <tab name="W2">
        This is the content of the second tab
    </tab>
</tabs>
与vue-router一起使用时,不会保存表单的内容。

因此,我计划在更改任何路线之前保存组件的数据,并在相同路线输入之前将其复制回去。 保存组件状态并检索它还有更好的方法吗?

还有其他方法可以继续吗?

更新

 <keep-alive>
     <router-view :key="$route.fullPath"></router-view> 
 </keep-alive>

这个作品。

1 个答案:

答案 0 :(得分:1)

我建议您检查一下:Keep alive

即使您更改了标签页,它也会使<keep-alive>内部的组件保持活动状态。 这样,您可以将表单数据保留在组件中,如果要在提交之前具有多步骤表单,这也非常有帮助。