태그가 아니더라도 문자열에서 html을 삽입하려고합니다.
이렇게 쉽게 해결할 수있는 두 가지 해결책이 있습니다.
먼저 태그에서이 요소를 포장하고 나중에 삽입 할 수 있습니다 : 잘, 그것은 위험 때문에
var title = ["My Title", <span>™</span>]
둘째, 당신이하지 않는 것이 좋습니다에도 불구하고 dangerouslySetInnerHtml
를 사용할 수 있습니다.
return <div dangerouslySetInnerHTML={{__html: title}}></div>
완벽하기 때문에 @Tom Fenech는 답변에서 두 가지 다른 우아한 해결책을 제시했습니다.
전체 작업 코드 :
var Example = React.createClass({
render: function() {
var listTitle = ["My Title", <span>™</span>]
var dangerousTitle = "My other Title™";
return <div>
{listTitle}<br/>
<div dangerouslySetInnerHTML={{__html: dangerousTitle}}></div>
</div>;
}
});
ReactDOM.render(
<Example/>,
document.getElementById('container')
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="container"></div>
감사합니다! 그게 작동 –