微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

重定向ssr后如何在vuex存储中重置/不保留某些属性的状态?

如何解决重定向ssr后如何在vuex存储中重置/不保留某些属性的状态?

我们正在使用服务器端渲染,并且在所有vuex模块中使用preserveState来在从一页导航到下一页时保持状态。

但是,我们有一个特定的商店,我们不想保留 some 属性。在Vuex商店中有没有办法做到这一点?例如

@Module({ namespaced: true,dynamic: true,store,name,preserveState: true })
class SampleModule extends VuexModule {
      propertyOne: {}; // we want to persist this
      propertyTwo: {}; // we want to persist this
      propertyThree: {}; // we DO NOT want to persist this
      propertyThree: {}; // we DO NOT want to persist this
}

我们目前唯一想到的方法是为那些我们不想保留的属性创建一个单独的存储。但这不是理想的,因为这些属性非常相关,唯一的区别是我们是否要保留它们。

有更好的方法吗?

解决方法

是的,当前在我最近的项目中处理它的方式是创建一个动作,该动作将带有一个有效载荷,每当我重定向到另一页时,该有效载荷将用于将状态更改回其默认值。通常,我建议您当您重定向到另一个页面时,在卸载的组件的destroy life cycle挂钩内调用了此类操作。我知道的另一种方法是使用vuex订阅方法... https://vuex.vuejs.org/api/#subscribe。这似乎是一个过度杀戮,但它也可以根据您的需要工作。 如果明天有时间,我可能会附上一些代码示例供您查看..抱歉,现在是凌晨3点,我要睡觉了.... ciao

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?