Facebook の ReactJS の扱いに問題があります。Ajax を実行して HTML データを表示しようとすると、ReactJS はそれをテキストとして表示します。(下の図を参照)
データは、jquery Ajax の成功コールバック関数を通じて表示されます。
$.ajax({
url: url here,
dataType: "json",
success: function(data) {
this.setState({
action: data.action
})
}.bind(this)
});
これを HTML に変換する簡単な方法はありますか? ReactJS を使用してどのように実行すればよいですか?
ベストアンサー1
デフォルトでは、ReactはHTMLをエスケープして、XSS (クロスサイトスクリプティング)実際にHTMLをレンダリングしたい場合は、dangerouslySetInnerHTML
財産:
<td dangerouslySetInnerHTML={{__html: this.state.actions}} />
React は、テキストを誤って HTML としてレンダリングして XSS バグが発生しないように、意図的に面倒な構文を強制します。