Vue3 在第一个设备上更改 pinia store 时,如何在第二台设备上重新渲染应用程序?

Vue3 How to re-render the app on a second device when changing pinia store in the first?

提问人:Renaud Bresson 提问时间:9/28/2023 更新时间:9/28/2023 访问量:23

问:

我的问题是当他更改信息(如语言、姓名、地址...... 例如,我在两个不同的浏览器上打开我的项目。如果我在一个浏览器中将默认语言从英语更改为法语,没关系,默认语言在商店中设置良好,并且在屏幕上显示良好,但另一个浏览器中的第二个窗口仍然是英语,商店仍然有“英语”作为默认语言。你知道为什么吗?以及如何解决它?

我试图添加一个“监视”功能,但没有成功

vuejs3 跨浏览器 pinia

评论


答:

1赞 Nickel 9/28/2023 #1

默认情况下,Pinia 存储不是可由同一站点的其他实例访问的数据库。两个不同的选项卡将具有两种不同的状态。有一些插件可以跨选项卡同步状态,但我认为它们不适用于不同的窗口,也绝对不适用于不同的浏览器。

如果希望无论用户从何种设备、浏览器或选项卡访问站点,数据都能保留,则需要将数据存储在数据库中的某个位置。完成此操作后,您可以订阅所需的数据,并在页面的任何打开版本中更改数据时接收更新。

评论

0赞 Renaud Bresson 9/29/2023
谢谢你的回答。问题不在于持久化数据,而在于使用持久化数据在另一个浏览器(或通常在本机/Web 应用程序页面上)发生更改时刷新页面。我看到了一些插件,但没有一个可以与纱线一起使用。每次进行更改时,我都尝试刷新页面,但这不是前端语言的兴趣。