0
Ich bin neu in Framework ReactJS und versuche, zwei verschiedene bekommt auf einer Seite. Jeder get erhält ein anderes Array verschiedener Datenbanken. Können Sie mir bitte helfen, diesen Fehler zu verstehen?Kann nicht 'slice' von undefined lesen
class Example extends React.Component{
constructor (props) {
super(props);
this.props.dispatch (get1({email:this.props.email}),get2({email:this.props.email}));
this.options = {
onPageChange: this.onPageChange.bind(this),
onSizePerPageList: this.sizePerPageListChange.bind(this)
};
}
sizePerPageListChange(sizePerPage) {
alert(`sizePerPage: ${sizePerPage}`);
}
onPageChange(page, sizePerPage) {
alert(`page: ${page}, sizePerPage: ${sizePerPage}`);
}
componentDidMount() {
setTimeout(() => {
this.refs.table2.forceUpdate();
this.refs.table3.forceUpdate();
}, 500);
}
render() {
return (
<table width={1000} height={500}>
<tr>
<td>
<BootstrapTable ref="table2" data={ this.props.array_1 }
options={ this.options } multiColumnSort={ 2 } striped hover>
<td dataField='att_1' isKey={true} width="55px">Col_1</td>
<td dataField='att_2' width="140px">Col_1</td>
<td dataField='att_3' width="140px">Col_2</td>
<td dataField='att_4' width="30px">Col_3</td>
</BootstrapTable>
</td>
<td width={50}> </td>
<td>
<BootstrapTable ref="table3" data={ this.props.array_2 }
options={ this.options } multiColumnSort={ 2 } striped hover>
<td dataField='att_5' isKey={true} width="55px">Col_4</td>
<td dataField='att_6' width="140px">Col_5</td>
<td dataField='att_7' width="30px">Col_6</td>
</BootstrapTable>
</td>
</tr>
</table>
);
}
};
function mapStateToProps(state){
return{
array_1: state.proj.array_1,
array_2: state.hist.array_2,
email: state.email
};
}
export default connect(mapStateToProps,{get1,get2})(Example);
Es scheint, dass 'this.props.array_1' (und möglicherweise' this.props.array_2') nicht definiert sind. Schickst du sie als Requisiten an deine Komponente? Wenn Ihre "gets" http GETs sind, dann müssen Sie vielleicht auf eine Antwort warten, bevor Sie versuchen, Ihre Komponente zu rendern. Ist das sinnvoll? Sie können es Rendern, bevor Sie die tatsächlichen Daten haben. – byumark