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>
相關文章
相關標籤/搜索