您不需要将整个组件存储在状态中。您只需将对象保存到状态中,然后使用该状态来渲染jsx。
此外,如果你想将道具保存到可以使用的状态
static getDerivedStateFromProps
方法
class LoggBockRowList extends Component {
constructor(props) {
super(props);
this.state = {
loggbocks: null
};
}
static getDerivedStateFromProps(props, state) {
return {
loggbocks: props.loggbocks
};
}
render() {
return (
<ul>
{this.state.loggbocks &&
this.state.loggbocks.map((loggbock) => (
<LoggBockRowItem
key={loggbock.key}
id={loggbock.id}
datum={loggbock.datum}
tid={loggbock.tid}
skift={loggbock.skift}
anläggningsdel={loggbock.anläggningsdel}
orsak={loggbock.orsak}
driftstatus={loggbock.driftstatus}
beskrivning={loggbock.beskrivning}
plats={loggbock.plats}
rapporterare={loggbock.rapporterare}
/>
))}
</ul>
);
}
}