سلام
چرا وقتی در یک کلاس کمپوننت ریکت یک المنت را با id میگیریم و میخواهیم یک پراپرتی براش ست کنیم خطا میده؟
مثلا در کد زیر در متد scrollTo این خطا رو میده
Cannot read properties of null (reading 'scroll')
احتمال داره به این دلیل باشه که سند html ما هنوز load نشده ولی خوب در این صورت راه حل چیه؟
import React, { Component } from "react";
import Footer from "./Footer";
import Typing from "./Typing";
import ChatList from "./chatList";
export default class Body extends Component {
constructor(props){
super(props);
this.state={
typingstate:"Typing*...",
}
this.scrollTo=this.scrollTo.bind(this)
this.submitHandeler=this.submitHandeler.bind(this);
this.chatcontainer=document.getElementById("chatcontainer");
}
scrollTo(){
this.chatcontainer.scroll(0, 2000);
}
submitHandeler(message){
this.setState((state)=>{
return {...state,chatlist:[...state.chatlist,{name:"you",message,time:new Date().toLocaleTimeString(),avatar:"https://bootdey.com/img/Content/avatar/avatar1.png"}]}
});
}
render() {
return ( <>
<div className="col-12 col-lg-7 col-xl-9">
<Typing name={this.state.chatlist.name} typingstate={this.state.typingstate}/>
<ChatList chatlist={this.state.chatlist}/>
<Footer scrollTo={this.scrollTo} submitHandeler={this.submitHandeler}/>
div>
>
);
}
}
// scrollTop
// clientTop