0
我使用Reactjs和Relayjs在我的web应用程序查询数据确定。其中一页,我称之为memberList
,正在显示在网站上注册的所有用户的列表。当继电器取
这是我实现的一个简化版本:
render() {
{this.props.memberList.edges.length > 0 ?
<ol>
{this.props.memberList.edges.map(
(member, i) => {
return <li>{member.node.username}</li>;
}
)}
</ol>
: <span>No members to show!</span>}
}
而且我RelayContainer:
export default Relay.createContainer(MemberList, {
fragments: {
classroom:() => Relay.QL`
fragment on Classroom {
id,
memberList(first: 100) {
edges {
node {
id,
username
}
}
},
}
`,
},
});
也能正常工作;它按预期显示教室的所有成员。但是,页面不表现得很,因为我想它:
- 当浏览网页,或刷新时,该
<span>
呈现短暂的片刻,因为this.props.memberList.edges
数组为空。 - 不到一秒钟后,
props
更新和阵列不再为空。这会导致重新呈现,并且现在会显示带有成员的<ul>
列表 - 正如预期的那样。
我想,当继电器读取数据,所以我可以确定memberList
是实际上空,或者它的属性还不能确定,因为查询响应挂起就知道了。
这又如何实现呢?我搜索了2个多小时,我只能找到突变的相关答案,这不是我在这里做的。谢谢。