Redux 阿波罗:真理的唯一源泉
redux有“单一真相来源”的原则,我很难弄清楚GQL中的轮询片段将如何继续保持这一原则 TL;DR:apollo是为整个应用程序规范化实体,还是为每个apollo容器规范化实体 阿波罗有自己的redux商店。 通过架构图,我看到在将数据应用到redux之前有一个规范化阶段 我的问题是:假设我有一个post模式和一个用户模式。 在轮询帖子时,我会提取帖子信息,以及作者(用户模式)姓名和个人资料。 我和阿波罗有一个邮筒。 所以我猜阿波罗商店现在的状态是:Redux 阿波罗:真理的唯一源泉,redux,apollo,react-apollo,apollo-client,Redux,Apollo,React Apollo,Apollo Client,redux有“单一真相来源”的原则,我很难弄清楚GQL中的轮询片段将如何继续保持这一原则 TL;DR:apollo是为整个应用程序规范化实体,还是为每个apollo容器规范化实体 阿波罗有自己的redux商店。 通过架构图,我看到在将数据应用到redux之前有一个规范化阶段 我的问题是:假设我有一个post模式和一个用户模式。 在轮询帖子时,我会提取帖子信息,以及作者(用户模式)姓名和个人资料。 我和阿波罗有一个邮筒。 所以我猜阿波罗商店现在的状态是: { posts: { 51
{
posts: {
512 : {
title: "title"
content: "big content"
author: [32]
}
},
users: {
32 : {
name: "James"
profilePic: "YYYYYY"
}
}
}
但是,当用户James将他的名字改为Julian,而另一个组件,经常更新的chat menu组件的用户id为:32,名称不同,Julian时会发生什么情况呢
帖子容器也会因此更新吗?
否则它将继续显示过时的数据?好问题
你的答案可以在这里找到:
如果链接中断,将进行总结:
apollo client
不会以您请求的方式存储内容,而是作为一个平面结构(并基于ID
,\uuu typename
为该对象生成一个ID,并跟踪对象之间的引用)
当组件请求这些对象时,它将从展开的结构中获取对象,并将其构建为请求的格式