javascript - 如果把任何状态(不管是否是需要共享的)都存在于Pinia,是否可行,是否有其他的什么影响呢?

 

问题描述:

我们知道,Vue的状态,可以存在于单个组件中,不被其他组件共享,也可以存放于Pinia这样的状态管理工具内。
请问,这种方式的话,有没有什么弊端呢?


 

第 1 个答案:

职责分离,当其他开发者打开store文件夹,约定大于配置就会理所当然相信这里面是全局状态。你将封闭的状态写在全局不但不好管理,还会导致混乱。当其他开发者发现这个页面状态出现问题了,就会去找到这个vue文件,然后发现这里面的状态放在全局,他就会觉得是其他组件改变了这个状态,找BUG会比较苦难。


 

第 2 个答案:

如果这个组件在页面上同时显示多个的话,怎么办呢?再把状态移到组件内部吗?


<img src="blob:http://local.xxxx.test.com:8000/475de81c-4d41-40a3-b3fe-3d8ed19676 ...