REACT.js und Rendern aber verwenden von innerHTML-element-rendering in?

Ich habe ein Bedürfnis und ich kann nicht scheinen, um es zu überwinden.

Weil mein Seite verwendet sowohl Template-rendering UND reagieren... ich habe dieses div hat eine id, sagen wir "foo".

Nun, ich würde gerne den Inhalt des "foo", DANN machen meine Komponente mit dem Inhalt von foo. Meine Reagieren Komponente haben muss, um einen bestimmten look, aber die Seite Vorlage hat eine andere.... macht das Sinn?

ie.

Seite macht mit so etwas wie:

<div id="foo">
   <ul>
     <li>Item One</li>
     <li>Item two</li>
   </ul>
</div>

dann in meinem jsx-Datei, die ich habe:

var fooElem = document.getElementById('foo');
var contents = fooElem && fooElem.innerHTML || '';

if(fooElem) {
    React.render(
      <MyCOMPONENT data={contents} />,
       fooElem
    );
}

Ich denke, es wäre eine einfache Sache, nur das innerHTML von div-und dann machen Sie eine Komponente mit "neuen" component-content-rund um die 'innerhtml', die ich ergriff. Wie Sie sehen können, nehme ich eine requisite von "Daten" und ich, dass innerhalb meiner Komponente spucken es wieder raus, aber in einem anderen format. etc..., die "foo" div übergeben, indem Sie das backend, also ich kann es nicht ändern, andere als "Versuch, die innerHTML, manipulieren und Rendern einer Komponente in diesen Raum..".

Jede mögliche Hilfe würde geschätzt.

Bekomme ich Fehler, dass das element geändert wurde, und wie.. und es scheint zu gehen, nur in einer Art Schleife.

  • Wenn Sie Zugriff auf den HTML-und der innerHTML, warum nicht einfach ein recode alles in Reagieren? Was Sie versuchen, zu tun, scheint wie ein sehr schlechtes anti-pattern.
  • warum wäre es ein anti-pattern? Es scheint nur, wie ein normaler Vorgang, der Reagieren Sie sollten in der Lage sein zu handhaben. Ich habe Zugriff darauf, aber ich habe keinen Zugriff auf das, was bestimmt den Inhalt.
  • Sorry - ich dachte, Sie bedeutete, dass Sie hatte vollen Zugriff, um tatsächlich das zu schaffen, was ist im inneren foo. Beim Rendern das React-Komponente, wollen Sie es neben foo oder sollte es ersetzen foo?
  • nun gut, ich will im Grunde nehmen Sie den Inhalt und fügen Sie ihn in meine Komponente, dann haben meine Komponente Rendern div foo. im Grunde packen Sie den Inhalt von foo -- stellen, dass die Inhalte in meine Komponente dann machen meine Komponente elem foo. So, die Benutzer sehen, die "gleiche" nur aber würde gestylt werden anders.
InformationsquelleAutor user1492442 | 2015-07-28
Schreibe einen Kommentar