Я хочу получить доступ к функции, которая находится в реквизитах после получения данных с помощью axios, но я получаю сообщение об ошибке:
Ожидал присваивания или вызова функции, а вместо этого увидел выражение no-unused-expressions
Я могу получить доступ к той же функции внутри jsx, но она не работает, когда я пытаюсь вызвать ее из function/axios. Вот мой код:
function LoginModal(props) {
let emailInput = React.createRef();
let passwordInput = React.createRef();
const getToken = (props) => {
axios.post('http://localhost:8000/api/token/', {
username: emailInput.current.value,
password: passwordInput.current.value
})
.then(function (response) {
props.closeModalHandler();
})
}
return (
<div className={styles.Background} onClick={props.closeModalHandler}>
<div className={styles.ModalContainer}>
<h2>Log in.</h2>
<div className={styles.InputContainer}>
<input type="text" className={styles.Input} ref={emailInput} />
<label htmlFor="" className={styles.ActiveLabel}>Email</label>
</div>
<div className={styles.InputContainer}>
<input type="password" className={styles.Input} ref={passwordInput}/>
<label htmlFor="" className={styles.ActiveLabel}>Password</label>
</div>
<button className={styles.LoginButton}
onClick={getToken}>Log me in</button>
<p>Forgot password? <br/>
Reset it <b>here</b>
</p>
</div>
</div>
)}
props.closeModalHandler
— это функция, вам не хватает скобокprops.closeModalHandler()
- person Ismael Padilla   schedule 08.01.2020props.closeModalHandler
это функция. Вам нужно вызвать это как функциюprops.closeModalHandler()
- person prasanth   schedule 08.01.2020console.log(response)
в промис, чтобы увидеть, успешно ли промис получает ответ - person Oner T.   schedule 08.01.2020return props.closeModalHandler
? - person James Whiteley   schedule 08.01.2020props
в единственном месте, где он его использует. Что заставляет вас думать, что это невозможно? (Отдельно: обязательно обрабатывайте ошибки, а не только успехи.) - person T.J. Crowder   schedule 08.01.2020