2017-03-17 7 views
-1

사용자 입력이 필요한 작은 응용 프로그램이 있는데, 입력 할 때 약간의 미리보기를 표시하고 싶습니다 (정확히 Stackoverflow가 수행함). 나는 새로운 라인을 추가하려고 할 때까지반품에 대해 innerText를 설정하십시오

ReactDOM.render(
    <div>{user_input}</div>, 
    document.getElementById('preview') 
); 

그것은 좋은 작품이 무시 반응 단지 공백을 렌더링 :

나는 이런 식으로 뭔가를하려고합니다. 나는 바닐라 자바 ​​스크립트에 그것을 할하지만이 같은 그 일을

var content = document.createElement('div'); 
content.innerText = user_input; 
document.getElementById('preview').appendChild(content); 

트릭을 수행하고 모든 줄 바꿈이 자동으로 <br> 태그로 전환됩니다.

반응에 innerText를 설정하는 방법이 있습니까? 아니면 바닐라 솔루션을 사용해야합니까?

innerText 사용에 방해가 있습니까?

+0

모든 코드가 "내부"반응 구성 요소가 아닌 것처럼 들립니다. 일반적으로 React의 폼 페이지 (https://facebook.github.io/react/docs/forms.html)와 미리보기를 보여주는 코드 페이지 예제에 대한 링크가 있습니다. 제어 된 구성 요소의 값 https://codepen.io/anon/pen/MpOvVw –

답변

0

아래 코드는 필요한 것일 수 있습니다.

var user_inputs = ['line1', 'line2']; 
var inputs = user_inputs.map(function(user_input, idx){ 
    return <div key={idx}>{user_input}</div> 
}); 

ReactDOM.render(
    <div className="root">{inputs}</div>, 
    document.getElementById('preview') 
);