Vue中插入HTML代码的方法

咱们须要吧<p>Hello World</p>插入到<p>My name is Pjee</p>应该如何作?html

1、使用v-html

v-html:更新元素的 innerHTMLvue

const text = `<p>Hello World</>`
<p>
    My name is Pjee
    <p v-html='text'></p>
</p>

注意:你的站点上动态渲染的任意 HTML 可能会很是危险,由于它很容易致使 XSS 攻击。请只对可信内容使用 HTML 插值,毫不要对用户提供的内容使用插值。git

2、渲染函数

渲染函数:这是经过对VNode(虚拟DOM)的操做来生成github

text(){
    render:(h)=>{
      h(
          'div', 
          [
            h('p', 'Hello'),
            ' world!'
          ]
        )
    }
}
<p>Hello World{{this.text()}}</p>

3、JSX

JSX:这个方法在React使用最为普遍,可是Vue中使用须要安装Babel插件babel

text(){
    return (<p>Hello World</p>)
}
<p>Hello World{{this.text()}}</p>

4、domPropsInnerHTML

domPropsInnerHTML:若是说JSX在vue不多用到,那么这个东西就更少有人使用到了dom

若是如今还有一段<p>How are you?</p>须要咱们插入到Hello World中,咱们就可使用这种方法函数

const newText = '<p>How are you?</p>'
text(){
 return (
   <p>
     Hello World
     <p domPropsInnerHTML={this.newText}></p>
    </p>
 )
}
<p>Hello World{{this.text()}}</p>
相关文章
相关标签/搜索