편집 가능한 사전 요소에서 텍스트에 원하지 않는 HTML 요소를 피하기 위해 Enter 키를 누를 때만 onKeyDown 스크립트를 실행합니다.
render({}, {content}) {
console.log("render: "+content);
return <p contenteditable onKeyDown={this.handleKeyDown}>{content}</p>
}
에서 handleKeyDown
함수 단락 콘텐츠는 변경되고 setState(content: newText)
콘텐츠가 다시 렌더링되도록한다라고하고있다. 이로 인해 새 텍스트가 두 번 작성됩니다.
"hello world"를 입력하고 "hello"뒤에 중단하면 "hello
worldhello
world"가됩니다.
handleKeyDown 및 render 함수가 올바른 문자열
"hello
world"를 기록하더라도
내가 여기서 뭘 잘못하고 있니?
를 사용할 때 contentEditable
일반적으로를 사용 dangerouslySetInnerHTML
하여 HTML 콘텐츠를 설정 해야 합니다.
<div
contentEditable
dangerouslySetInnerHTML={{
__html: value
}}
/>
다음은이 를 수행하는 방법을 보여주는 JSFiddle 예제 입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다