私はReactを使ってRSSリーダーを作ろうとしています。いくつかのRSSフィード(http://www.economist.com/sections/economics/rss.xml)には、CDATAセクションに囲まれた要素があり、HTMLマークアップが含まれています。これを処理するための「リアクト」の方法は何ですか?ReactJSとXML
あなたはあなただけのデータを取得し、HTML文書に直接それを書くだろうと、XML文書を解析するために通常のJavaScript/jQueryのを使用している場合私の理解では、その通常
document.getElementById('target').innerHTML
=xmlDoc.getElementsByTagName('description')[0].childNodes[0].data
しかし、以降のようなものですReactは仮想DOMを使用しますが、それはできません。あなたがしようとすると、
import React from 'react'
const Component = (props) => {
return (
<div>{xmlDoc.getElementsByTagName('description')[0].childNodes.data}</div>
)
}
export default Component
は、完全なHTMLタグの文字列としてセクションを表示します。
これを処理する方法が正しいかどうかやっているのかと思っていました。私はdangerouslysetInnerHTMLを認識していますが、Reactは人々がそれを使用するのを妨げるようであるため、可能な場合は避けたいと考えています。今、私はDomParserを使いこなしていて、CDATA文字列から特定のタグを抽出しようとしています.Googleで見つけてドキュメントを読むことができなかった方がいいかと思います。