मैं निम्नलिखित वर्ग घटक प्रतिक्रिया एक API हर 10 सेकंड कॉल करनी होगी। इसका कोई मुद्दों के साथ काम करता है।
class Alerts extends Component {
constructor() {
this.state = {
alerts: {},
}
}
componentDidMount() {
this.getAlerts()
this.timerId = setInterval(() => this.getAlerts(), 10000)
}
componentWillUnmount() {
clearInterval(this.timerId)
}
getAlerts() {
fetch(this.getEndpoint('api/alerts/all))
.then(result => result.json())
.then(result => this.setState({ alerts: result }))
}
render() {
return (
<>
<ListAlerts alerts={this.state.alerts} />
</>
)
}
}
मैं एक प्रतिक्रिया कार्यात्मक घटक को यह गुप्त कोशिश कर रहा हूँ। यह मेरा प्रयास अब तक है।
const Alerts = () => {
const [alerts, setAlerts] = useState([])
useEffect(() => {
getAlerts()
setInterval(() => getAlerts(), 10000)
}, [])
getAlerts() {
fetch(this.getEndpoint('api/alerts/all))
.then(result => result.json())
.then(result => setAlerts(result)
}
return (
<>
<ListAlerts alerts={alerts} />
</>
)
}
कृपया कर सकते हैं किसी को मदद के लिए मुझे उदाहरण को पूरा? useEffect सही उपयोग है या एक बेहतर विकल्प है?
किसी भी सहायता की सराहना की जाएगी