>source

이것은 내 HTML code입니다. 여기서는 배열의 모든 요소를 ​​렌더링합니다 (상태) 그리고 클래스를 추가하십시오"dragimg"각 요소에 (다른 용도 로이 수업이 필요합니다). 렌더링 된 배열 아래에서는 AN입니다입력단추; 아이디어는 사용자가 무언가를 입력 할 수 있고 그가 선택할 때단추, 입력 텍스트가 배열에 추가됩니다.상태...에

<div>    {this.state.texts.map(text=> (
         <div class="dragImg">{text}</div>     ))}
 </div> <input ref={(textInput)=> {this.textInput= textInput}}
 type="text"></input> <button onClick={this.clickButton.bind(this)}>Add
 Text</button>

여기에 있습니다clickbutton ()입력 값이 상태에 추가되는 기능 :

clickButton(){
        this.setState({
            texts: this.state.texts.concat(this.textInput.value)
          })
    }

목록의 모든 요소가 올바르게 렌더링되면 문제가 해당 목록의 미리 정의 된 요소 만"dragimg"HTML 클래스 태그와 사용자가 나중에 추가 한 것들은 더 이상 가지고 있지 않습니다. 이 모든 텍스트가 드래그 할 수없고,"dragimg"클래스 태그는 드래그 할 수 있으며 새 입력이 아닙니다.

무엇을 할 수 있습니까?

입력 값에 대한 Ref가 필요한 이유는 무엇입니까? 왜 그냥 주를 유지하지 않으시겠습니까?

T J2021-05-10 23:29:48
  • 이전 php : 내 $ PDO 변수가 범위 밖에있는 이유는 무엇입니까?
  • 다음 database : 일부 조건에서 MongoDB 데이터베이스에서 배열 인덱스를 어떻게 삭제할 수 있습니까?