Dies ist mein Code:React nicht Bestandteil Rendering
var Item = React.createClass({
render: function() {
return (
React.createElement('div', {},
React.createElement('span', {}, this.props.a),
React.createElement('span', {}, this.props.b)
)
);
}
});
var RParent = React.createClass({
getInitialState: function() {
return {messages: []};
},
addMess: function (data) {
var self = this;
self.state.messages.push({
a: data.a,
b: data.b
});
this.setState({messages: self.state.messages});
},
render: function() {
var messages = this.state.messages;
return (
React.createElement('div', {},
React.createElement(Item, messages))
);
}
});
var box = ReactDOM.render(React.createElement(RParent), document.getElementById('parentDiv'));
function render(a, b) {
box.addMess({
a: a,
b: b
});
}
Daten an die render
Funktion gesendet wird. Es scheint, dass die Eigenschaften irgendwie die Render-Funktion der Item
nicht erreichen, da sie undefined
erscheinen, wenn ich versuche, sie zur Konsole zu drucken.
Irgendwelche Ideen, warum dies passieren könnte?
Das Problem ist, dass nichts in die "parentDiv" gerendert wird. Es bleibt einfach leer. Bei der Überprüfung der Elemente kann ich jedoch zwei "span" -Kinder darunter sehen (die nicht in html oder anderswo als hier erstellt wurden). Aber diese Span-Elemente haben keinen Inhalt.
' ' was a und b, die Sie auf die Tasten sind zuweisen? –
@ free-soul Ich habe die andere Antwort gelöscht. a und b sind die gleichen Werte wie in der Frage. Bitte beachten Sie die Renderfunktion. –
@AmoolyaSKumar Danke, nur eine kurze Frage, ich habe den Code noch nicht ausprobiert (wird eine Weile nicht können), aber darf ich fragen, wo ich das Element in das 'messages' Array schieben soll? In Render-Ereignis? Oder 'componentWillMount' Ereignis? Meine Implementierung erfordert ein Array für das Steuerelement, also muss ich auch ein Array haben. – user3271166