Ich benutze react 16.0.Gibt es eine Möglichkeit, einem Element eine benutzerdefinierte Objekteigenschaft zuzuweisen?
Ich möchte eine benutzerdefinierte Objekteigenschaft einem Element zuweisen und seinen Wert abrufen.
Es ist wie folgt. (https://jsfiddle.net/69z2wepo/96660/) Natürlich funktioniert es nicht.
class Test extends React.PureComponent {
render() {
let numbers = { number:1, number2:2, number3:3 };
return <div numbers={numbers} onClick={(event) => console.log(event.target.numbers.number)}>Test</div>;
}
}
ReactDOM.render(
<Test/>, document.querySelector('body')
);
Ich möchte wissen, ob es einen guten Weg gibt. Vielen Dank.
Sie 'Daten- *' Attribute verwenden können und in einem String übergeben. Aber warum willst du das tun? warum nicht eine Komponente erstellen und Requisiten übergeben? Dies ist, wie reagieren bedeutete, zu arbeiten –
Wenn Ihr Zweck es zu tun ist zu vermeiden Bindung in Render, dann können Sie einen Blick auf diese https://stackoverflow.com/questions/45053622/how-to-avoid-binding-inside -Render-Methode/45053753 # 45053753 –
DOM Reisen ist teuer, ganz zu schweigen davon, dass Sie das Reaktionsmuster unterbrechen und Sie können mit seinem [Diffing und Reconciliation-Algorithmus] (https://reactjs.org/docs/reconciliation.html) unterbrechen. das virtuelle DOM wird aus einem guten Grund verwendet :) –