Vue render 함수에서 innerHTML 사용하는 방법 (How to use v-html in JSX)

남양주개발자

·

2021. 7. 8. 12:49

728x90
반응형

Vue render 함수에서 innerHTML 사용하는 방법 (How to use v-html in JSX)

일반적으로 React에서는 dangerouslySetInnerHTML, Vue에서는 v-html을 활용해서 innerHTML 처리를 합니다. 하지만 일반적인 방식이 아닌 렌더 함수(Render Function)를 사용하는 경우도 있는데요. 이때는 아래와 같이 처리하면 굉장히 간편하게 처리할 수 있습니다.

예시

this.$alert({
  content: (h) => h('div', { domProps: { innerHTML: err.message } })
})

좀 더 축약된 방식은 아래와 같습니다.

domPropsInnerHTML 활용한 방법

this.$alert({
  content: () => {
    return <p domPropsInnerHTML={'hello'} />
    // return <p domPropsInnerHTML={err.message} />
  }
})
export default {
  name: "app",
  data() {
    return {
      msg: '테스트 테스트!'
    }
  },
  render() {
    return (
      <h1 domPropsInnerHTML={this.msg}></h1>
    );
  }
};
728x90
반응형
그리드형

이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

💖 저자에게 암호화폐로 후원하기 💖

아이콘을 클릭하면 지갑 주소가자동으로 복사됩니다