多个中继容器和变量通信
Multiple Relay Containers and Variables communication
我正在尝试从另一个中继容器更改一个中继容器的变量。 它们没有父子关系,并且都在两个单独的根容器中。
Container = Relay.createContainer(Component, {
initialVariables: {
value: 10
},
fragments: {
fragmentOne: () => Relay.QL`
fragment on Score {
score(value: $value)
}`
}
});
假设我描述的场景:从上面的 Container 或另一个 Container 更改 $value 变量的最佳方法是什么?有一种方法只能使用 Relay 还是我需要 Redux(或 Reflux)来完成这项工作?
谢谢!
我会重新考虑您应用的设计。根容器的目的是位于顶部并将您的应用程序放在一起。
https://facebook.github.io/relay/docs/guides-root-container.html
拥有两个根容器后,您将构建两个应用程序。如果你的应用确实需要这样,你可能不会倒霉。多个应用程序通常通过 API 相互通信。使用 Relay,API 会说 graphql。通常你需要去服务器进行通信,但由于你的应用程序位于同一页面上,你可以使用本地 graphql api.
绕过服务器
https://github.com/relay-tools/relay-local-schema
如自述文件中所述,请谨慎使用此解决方案。
我正在尝试从另一个中继容器更改一个中继容器的变量。 它们没有父子关系,并且都在两个单独的根容器中。
Container = Relay.createContainer(Component, {
initialVariables: {
value: 10
},
fragments: {
fragmentOne: () => Relay.QL`
fragment on Score {
score(value: $value)
}`
}
});
假设我描述的场景:从上面的 Container 或另一个 Container 更改 $value 变量的最佳方法是什么?有一种方法只能使用 Relay 还是我需要 Redux(或 Reflux)来完成这项工作?
谢谢!
我会重新考虑您应用的设计。根容器的目的是位于顶部并将您的应用程序放在一起。
https://facebook.github.io/relay/docs/guides-root-container.html
拥有两个根容器后,您将构建两个应用程序。如果你的应用确实需要这样,你可能不会倒霉。多个应用程序通常通过 API 相互通信。使用 Relay,API 会说 graphql。通常你需要去服务器进行通信,但由于你的应用程序位于同一页面上,你可以使用本地 graphql api.
绕过服务器https://github.com/relay-tools/relay-local-schema
如自述文件中所述,请谨慎使用此解决方案。