import React, { Component } from "react";
class Learning extends Component {fName = React.createRef();onForm = e => {
e.preventDefault();console.info(this.fName.value.value);};render() {return (<div><form onSubmit = {this.onForm}><inputtype = "text" placeholder = "Enter Your First Name" ref = {this.fName} /><button type = "submit" style = {BtnStyle}>Submit</button></form></div>);}}export default Learning;



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы должны использовать свойство current по ссылке:
console.info(this.fName.current.value);
https://reactjs.org/docs/refs-and-the-dom.html#accessing-refs
Но рассмотрите возможность использования события изменения и состояния
class Learning extends Component {
constructor() {
this.state = {
fName: ''
}
}
updateName = (e) => {
this.setState({fName: e.target.value});
}
onForm = (e) => {
e.preventDefault();
console.info(this.state.fName):
}
render() {
return (
<form onSubmit = {this.onForm}>
<input onChange = {this.updateName} />
</form>
):
}
}
Снова проверьте реагирующие документы, ссылки, созданные с помощью React.createRef(), доступны как this.fName.current.XXX.