как получить доступ к элементу DOM вне компонента в файле JS в ReactJS - PullRequest
1 голос
/ 18 октября 2019

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

<input ref="usrname" input id="userName" ref="user" type="text" class="login-input" placeholder="Enter User ID" 
onChange={(e)=> {GlobalUserModel.setUserName(e.target.value); e.preventDefault();this.obj=GlobalUserModel}}/>

<button class="btn btn-primary btn-login" class="submit" id="submit" name="submit" onClick={ApiCall.bind(GlobalUserModel)} >Login</button>

И в LoginModel.js

class LoginModel {
username;
constructor(){
}
setUserName(username1) {
debugger;
this.username = username1;
console.log("username1 : ",username1)
return this.username;
}

getUserName(){
return this.username;
}
};
const GlobalUserModel=new LoginModel();
export default GlobalUserModel;

Любая помощь приветствуется. Спасибо заранее.

1 Ответ

0 голосов
/ 18 октября 2019

Для начала я бы хотел, чтобы вы знали, что плохая практика - иметь доступ к DOM снаружи от компонента. Это может вызвать побочные эффекты и подходящие ошибки.

В вашем случае вы можете передать onChange prop и вызвать его, когда input был изменен

...