Om Next 中数据如何流向组件渲染函数?
How does data flow to component render functions in Om Next?
组件数据是否必须从其父组件传入?还是组件查询允许数据直接流向组件?
我可以看到查询如何声明组件需要的数据。父组件是否必须检查其子组件的查询以找出要传递给它的数据?为什么许多示例都有父组件调用类似 (om/get-query ChildComponentClass)
?
是的。根组件很特殊。所有数据都必须传递到根组件中。为此,您的根组件的查询将是一系列连接。您在应用程序中拥有的每个组件的查询(具有唯一标识)必须表示为根级别的连接。如果数据进入您的应用程序,它必须进入根目录。它由 Om Next 放在那里,它从您的应用程序的 app state.
获取它
在 Om Next 应用程序中,您的组件组合在一起就像一棵树。它们通过查询相互关联,特别是通过连接。
在运行时,每个组件的 render
方法从父级获取它们的道具。该组件的查询将告诉您期望的道具。这些道具是一张简单的地图。
你问题的答案依次是:是,不是,是。对于第三个,父级并没有真正检查其子组件的查询,而是已经将该查询本身的数据作为连接,并将数据传递给子级。
你的最后一个问题 'Why do many of the examples have parent components calling something like (om/get-query ChildComponentClass)
?'。这是从父级到子级的连接,查询语法中描述:
{:app/child-join (om/get-query app/ChildComponentClass)}
这些连接的基数直到运行时才知道:它可以是 0、1 或许多。如果是一个,那么您可以将其描述为查找关系。如果超过一个,则作为主从关系。如果 none 两者都可以。
组件数据是否必须从其父组件传入?还是组件查询允许数据直接流向组件?
我可以看到查询如何声明组件需要的数据。父组件是否必须检查其子组件的查询以找出要传递给它的数据?为什么许多示例都有父组件调用类似 (om/get-query ChildComponentClass)
?
是的。根组件很特殊。所有数据都必须传递到根组件中。为此,您的根组件的查询将是一系列连接。您在应用程序中拥有的每个组件的查询(具有唯一标识)必须表示为根级别的连接。如果数据进入您的应用程序,它必须进入根目录。它由 Om Next 放在那里,它从您的应用程序的 app state.
获取它在 Om Next 应用程序中,您的组件组合在一起就像一棵树。它们通过查询相互关联,特别是通过连接。
在运行时,每个组件的 render
方法从父级获取它们的道具。该组件的查询将告诉您期望的道具。这些道具是一张简单的地图。
你问题的答案依次是:是,不是,是。对于第三个,父级并没有真正检查其子组件的查询,而是已经将该查询本身的数据作为连接,并将数据传递给子级。
你的最后一个问题 'Why do many of the examples have parent components calling something like (om/get-query ChildComponentClass)
?'。这是从父级到子级的连接,查询语法中描述:
{:app/child-join (om/get-query app/ChildComponentClass)}
这些连接的基数直到运行时才知道:它可以是 0、1 或许多。如果是一个,那么您可以将其描述为查找关系。如果超过一个,则作为主从关系。如果 none 两者都可以。