تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ مهدی بهور
property is null
جامعه ری اکت ایجاد شده در ۱۳ فروردین ۱۴۰۱

سلام

چرا وقتی در یک کلاس کمپوننت ریکت یک المنت را با 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

سلام

زمانی که react استفاده میکنیم به صورت مستقیم element‌ها رو به روشی که نوشتید انتخاب نمی‌کنیم و اگر هم نیاز باشه مستقیما یک elemnt رو انتخاب بکنیم از ref استفاده میشه که با این مورد در ادامه جلسات آشنایی پیدا می‌کنید

بهترین پاسخ
مجتبی سوری ۱۳ فروردین ۱۴۰۱، ۲۰:۳۲