Saya mencoba untuk beralih keadaan komponen di ReactJS tetapi saya mendapatkan kesalahan yang menyatakan:
Kedalaman pembaruan maksimum terlampaui. Ini bisa terjadi ketika suatu komponen berulang kali memanggil setState di dalam componentWillUpdate atau componentDidUpdate. React membatasi jumlah pembaruan bersarang untuk mencegah loop tak terbatas.
Saya tidak melihat loop tak terbatas dalam kode saya, adakah yang bisa membantu?
Kode komponen ReactJS:
import React, { Component } from 'react';
import styled from 'styled-components';
class Item extends React.Component {
constructor(props) {
super(props);
this.toggle= this.toggle.bind(this);
this.state = {
details: false
}
}
toggle(){
const currentState = this.state.details;
this.setState({ details: !currentState });
}
render() {
return (
<tr className="Item">
<td>{this.props.config.server}</td>
<td>{this.props.config.verbose}</td>
<td>{this.props.config.type}</td>
<td className={this.state.details ? "visible" : "hidden"}>PLACEHOLDER MORE INFO</td>
{<td><span onClick={this.toggle()}>Details</span></td>}
</tr>
)}
}
export default Item;
toggle(){...}
ke toggle = () => {...}
sehingga Anda tidak perlu bind
itu!
this.toggle()
kethis.toggle
atau{()=> this.toggle()}