Как вызвать функцию props в ответе axios в react.js

#reactjs

Вопрос:

Я хочу , чтобы при нажатии кнопки » Да » отправить как запрос, так и закрыть модальный.

моя близкая модальная функция-это реквизит, а мой запрос axios-внутренняя функция .

как я могу вызвать функцию props в ответе axios ?

или как я могу вызвать функцию и функцию реквизита, когда нажата кнопка «да»?

 function DeleteRow(props){  let {ErrorHandler} = useContext(ErrorContext); let {DidUpdate} = useContext(AsideContext);  let data = `id=${props.status.rowId}`; function DeleteRowReq(){   axios.post('Acounting-API/API/expenses/delete.php' , data)  .then(res =gt; {   if(res.data == 'id-error')  ErrorHandler('An error has occurred , plz Contact support' , 'warning')   else if(res.data == 'error')  ErrorHandler('An error has occurred , plz Contact support' , 'warning')   else if(res.data == 'success'){  ErrorHandler('The desired row was successfully removed' , 'success')  DidUpdate(`delete row with id : `);  props.closeModal.bind(this , '' , 'delete_table_row_hide');  }    })  .catch(e =gt; console.log(e))  }  return(  lt;div className={`${style.logout_modal_field} ${props.status.className}`} onClick={props.closeModal.bind(this , '' , 'delete_table_row_hide')}gt;  lt;div className={style.main_field}gt;  lt;div className={style.content} onClick={e =gt; e.stopPropagation()}gt;   lt;pgt;Are you sure you want to delete this row ?lt;/pgt;  lt;divgt;  lt;button onClick={DeleteRowReq}gt;Yeslt;/buttongt;  lt;button onClick={props.closeModal.bind(this , '' , 'delete_table_row_hide')}gt;Nolt;/buttongt;  lt;/divgt;   lt;/divgt;  lt;/divgt;  lt;/divgt; )  

}

Ответ №1:

вы можете просто вызвать close props из оператора finally.

 function DeleteRow(props){  let {ErrorHandler} = useContext(ErrorContext); let {DidUpdate} = useContext(AsideContext);  let data = `id=${props.status.rowId}`; function DeleteRowReq(){   axios.post('Acounting-API/API/expenses/delete.php' , data)  .then(res =gt; {   if(res.data == 'id-error')  ErrorHandler('An error has occurred , plz Contact support' , 'warning')   else if(res.data == 'error')  ErrorHandler('An error has occurred , plz Contact support' , 'warning')   else if(res.data == 'success'){  ErrorHandler('The desired row was successfully removed' , 'success')  DidUpdate(`delete row with id : `);  props.closeModal.bind(this , '' , 'delete_table_row_hide');  }    })  .catch(e =gt; console.log(e))  .finally(()=gt; props.closeModal.bind(this , '' ,   'delete_table_row_hide');)  }