const Room = (props) => {
  const [hasError, setErrors] = useState(false);
  const [rooms, setRooms] = useState([]);

  return (
      <div> <a onClick={() => deleteRoom()}</div>
    )
}

const deleteRoom = () => {
  //How to update setRooms here
}

मैं setRooms को deleteRoom विधि में कैसे अपडेट करूं?

0
Raaz 3 अगस्त 2020, 13:57

3 जवाब

सबसे बढ़िया उत्तर

आपके पास 2 विकल्प हैं:

  1. अपनी deleteRoom विधि को Room घटक के अंदर रखें
const Room = (props) => {
  const [hasError, setErrors] = useState(false);
  const [rooms, setRooms] = useState([]);


  const deleteRoom = () => {
    ... use your state..
  }

  return (
      <div> <a onClick={() => deleteRoom()}</div>
    )
}
  1. अपने useState फ़ंक्शन को तर्क के रूप में deleteRoom पर पास करें।
const Room = (props) => {
  const [hasError, setErrors] = useState(false);
  const [rooms, setRooms] = useState([]);


  return (
      <div> <a onClick={() => deleteRoom(setRooms, setErrors)}</div>
    )
}

const deleteRoom = (setRooms, setErrors) => {
  you can use setRooms() and setErrors() here
}
0
gbalduzzi 3 अगस्त 2020, 14:02

आपको बस Room घटक के अंदर deleteRoom फ़ंक्शन को परिभाषित करना होगा।

const Room = (props) => {
  const [hasError, setErrors] = useState(false);
  const [rooms, setRooms] = useState([]);



  const deleteRoom = () => {
    setRooms(...);
  }

  return (
      <div> <a onClick={() => deleteRoom()}</div>
  )
}
3
yash 3 अगस्त 2020, 14:00

आप setRooms को deleteRoom में एक तर्क के रूप में पास कर सकते हैं और इसे वहां कॉल कर सकते हैं।

उदाहरण के लिए

const Room = (props) => {
  const [hasError, setErrors] = useState(false);
  const [rooms, setRooms] = useState([]);

  return (
      <div> <a onClick={() => deleteRoom(setRooms)}</div>
    )
}

const deleteRoom = (setRooms) => {
  //How to update setRooms here
  setRooms(...)
}
2
Nikos Chatzivasileiadis 3 अगस्त 2020, 14:00