1. ホーム
  2. ジャバスクリプト

[解決済み】Vue.jsでエスケープされていないHTMLを表示する。

2022-04-01 10:10:45

質問

どうすればマスターチェバインディングの中でHTMLを解釈させることができますか?今のところブレーク( <br /> ) が表示/エスケープされるだけです。

小さなVueアプリ。

var logapp = new Vue({
  el: '#logapp',
  data: {
    title: 'Logs',
    logs: [
      { status: true, type: 'Import', desc: 'Learn<br />JavaScript', date: '11.11.2015', id: 1  },
      { status: true, type: 'Import', desc: 'Learn<br />JavaScript', date: '11.11.2015', id: 1  }
    ]
  }
})

そして、これがテンプレートです。

<div id="logapp">    
    <table>
        <tbody>
            <tr v-repeat="logs">
                <td>{{fail}}</td>
                <td>{{type}}</td>
                <td>{{description}}</td>
                <td>{{stamp}}</td>
                <td>{{id}}</td>
            </tr>
        </tbody>
    </table>
</div>

解決方法は?

ディレクティブ v-html を使って表示することができます。 このように

<td v-html="desc"></td>