본문 바로가기
개발/VUE

Vue - v-html 사용 시 발생하는 주석 관련 에러 해결 방법

반응형

Vue.js는 가상 DOM을 기반으로 하는 강력한 프론트엔드 프레임워크로, 동적인 콘텐츠를 효과적으로 처리할 수 있습니다. 그중에서도 v-html 디렉티브는 HTML 문자열을 렌더링 할 때 사용되며, 때로는 예상치 못한 문제를 일으킬 수 있습니다. 특히, v-html이 사용된 태그 안에 주석이 들어갈 경우 에러가 발생할 수 있습니다.

v-html will override element children. 에러 상황

///일반적으로 v-html을 사용하면 다음과 같이 사용됩니다.
<div v-html="htmlContent"></div>

///하지만 이렇게 사용할 때, 해당 태그 안에 주석이 포함되면 문제가 발생합니다.
<div v-html="htmlContent"><!-- This is a comment --></div>

///이외의 무엇이든 v-html 태그속에 들어갈경우 에러 발생
<div v-html="htmlContent">??</div>


Vue.js에서는 v-html을 사용할 때 태그 안에 주석이 들어가면 해당 주석이 엘리먼트의 자식(children)으로 간주되어 문제가 발생할 수 있습니다. Vue.js는 v-html이 특정 엘리먼트 내용을 대체하므로 주석이 자식으로 존재하면 예상치 못한 결과를 초래할 수 있습니다.

 

v-html을 사용할 때는 주석이나 다른 특수한 태그에 주의해야 합니다. 주석을 다룰 때에는 Vue.js의 특성을 고려하여 최적의 방법을 선택하는 것이 중요합니다.

 

v-html 태그에서 에러가 발생하고 있다면 v-html 태그의 내용을 비워주시면 됩니다.

반응형