Ich habe Probleme mit Facebooks ReactJS. Immer wenn ich Ajax mache und HTML-Daten anzeigen möchte, zeigt ReactJS diese als Text an. (Siehe Abbildung unten)
Die Daten werden über die Erfolgsrückruffunktion der jquery Ajax angezeigt.
$.ajax({
url: url here,
dataType: "json",
success: function(data) {
this.setState({
action: data.action
})
}.bind(this)
});
Gibt es eine einfache Möglichkeit, dies in HTML umzuwandeln? Wie soll ich es mit ReactJS machen?
javascript
jquery
ajax
reactjs
Peter Wateber
quelle
quelle
sanitize
Funktion aus demdompurify
npm-Paket zu bereinigen, wenn Sie diese Informationen von einer externen API erhalten.Es gibt jetzt sicherere Methoden, um dies zu erreichen. Die Dokumente wurden mit diesen Methoden aktualisiert .
Andere Methoden
Am einfachsten - Verwenden Sie Unicode, speichern Sie die Datei als UTF-8 und setzen Sie sie
charset
auf UTF-8.<div>{'First · Second'}</div>
Sicherer - Verwenden Sie die Unicode-Nummer für die Entität in einer Javascript-Zeichenfolge.
<div>{'First \u00b7 Second'}</div>
oder
<div>{'First ' + String.fromCharCode(183) + ' Second'}</div>
Oder ein gemischtes Array mit Zeichenfolgen und JSX-Elementen.
<div>{['First ', <span>·</span>, ' Second']}</div>
Letzter Ausweg - Fügen Sie rohes HTML mit ein
dangerouslySetInnerHTML
.<div dangerouslySetInnerHTML={{__html: 'First · Second'}} />
quelle
Ich empfehle die Verwendung von Interweave, das von Milesj erstellt wurde . Es ist eine phänomenale Bibliothek, die eine Reihe von raffinierten Techniken verwendet, um HTML zu analysieren und sicher in das DOM einzufügen.
Anwendungsbeispiel:
quelle
quelle
Ich fand diese Geige. das funktioniert so
jsfiddle link
quelle
import JSDOM from 'jsdom'; global.window = new JSDOM('', { url: 'http://localhost' }); global.document = global.window.document;
idk goodluck tunSie können auch Parser () aus dem HTML-React-Parser verwenden. Ich habe das gleiche benutzt. Link geteilt.
quelle
Ich beginne mit dem npm-Paket namens react-html-parser
quelle
Für diejenigen, die noch experimentieren, installiert npm den react-html-parser
Als ich es installierte, hatte es 123628 wöchentliche Downloads.
quelle
Sie können Folgendes verwenden, wenn Sie rohes HTML in React rendern möchten
Beispiel - Rendern
Test ist ein guter Tag
quelle