2016-06-05 2 views
2

this ReactJS documentation on refs에서 myInput은 입력의 ref에 할당됩니다.ReactJS에서 ref에 동적 값을 할당하려면 어떻게해야합니까?

<input ref="myInput" /> 

나는 런타임 중에 만 알 수있는 입력이 두 개 이상 있습니다. 어떻게 할당 할 수 있는지 알고 싶습니다 myInput1, myImput2 여러 입력에?

UPDATE :

내가 런타임에만 입력의 번호를 알고 이유에 대해 명확히 할

.

나는 그 안에 입력 컨트롤이있는 상위 구성 요소를 가지고 있습니다. 상위 구성 요소는 많이있을 수 있습니다. 그것들은 일련의 데이터로부터 만들어집니다. 해당 고차 구성 요소 내부에 참조을 입력으로 설정하여 몇 가지 툴팁을 표시 할 수 있습니다. DOM에는 하나의 툴팁 만 있고 입력 컨트롤의 위치를 ​​기반으로 배치됩니다.

+0

방법 만 알 수 런타임 동안 그들이 반응의 외부 렌더링 가지고 올있다 ? 당신이 게시 한 예에 관해서는 다음과 같습니다. : 렌더링에서 반환 된 모든 것에 ref 속성을 지정하십시오 : – JordanHendrix

+0

질문에 대한 내 업데이트를 참조하십시오. –

+0

감사합니다. 훨씬 더 명확 해졌습니다.지도를 만들 때 ref = { 'myInput + i'}와 같은 색인을 사용하여 입력을 참조 할 수 있습니다. – JordanHendrix

답변

2

배열을 매핑 할 때 동적으로 참조를 추가 할 수 있습니다.

http://jsfiddle.net/vhuumox0/21/

사용자의 입력에 대한
class Main extends React.Component{ 
    constructor(props){ 
    super(props); 
    } 
    componentDidMount() { 
    console.log(this.refs); // works, shows 3 
    console.log(this.refs.myInput2); // works 
    } 
    render() { 
    const inputs = this.props.inputs.map((inp, i) => { 
    return <input ref={`myInput${i}`}>{inp}</input> 
    }) 
    return (
     <div>{inputs}</div> 
    ); 
    } 
} 

ReactDOM.render(<Main inputs={['input1', 'input2', 'input3']}/>, 
관련 문제