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

在“ mobx状态树”中是否始终需要“根存储”?

如何解决在“ mobx状态树”中是否始终需要“根存储”?

在mobx-state-tree中,如果要使用对对象的“引用”,则必须位于同一“树”下。如果没有包含所有内容的根存储,这将很难执行任何操作。

例如,假设我从数据库中检索了“事物”列表。我有一个“ Thing”模型,因此我将数据转换为Thing模型实例的列表。然后,我想编辑我的东西,因此我创建了一个ThingEditor组件,该组件需要对该事物的引用以及它本身的某种状态。因此,我为“ ThingEditor”定义了一个模型,其中包括对正在编辑的Thing的“引用”。

问题是:您只能使用“引用”引用同一mst“树”中已经存在的实例! 因此,我必须创建某种“根存储”,其中包含所有Thing实例以及ThingEditor实例!这对于小型应用程序来说很好,但是如果应用程序变大,那么将诸如编辑器组件的状态之类的内容保存在中央根存储中就变得很疯狂。我希望编辑器组件的状态归该组件所有。

我的问题是这些

我错过了什么吗? 我做错了吗? 我应该只对持久性数据使用mst,而不对编辑器组件的瞬时内部状态使用吗? 有没有人用mst构建一个复杂的应用程序? 您是否将mst用于瞬态(不可持久)组件状态? “引用”不是将编辑器连接到Thing的正确方法吗? 您可以在不使用中央“根存储”的情况下制作大型应用程序吗? 随着应用变得庞大和复杂,mst会成为问题吗?还是会使事情变得更好?

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