ich eine Benutzerkomponente:ReactJS - Komponente vorbei this.state.object nicht richtig an eine andere Komponente
import React, { Component } from 'react';
class User extends Component {
render() {
return(
<div>
<span className="user-name">{this.username}</span>
<img src={this.profilePicture} />
</div>
)
}
}
User.propTypes = {
username: React.PropTypes.string.isRequired,
profilePicture: React.PropTypes.string.isRequired
};
export default User;
Dann bin ich diese Komponente in meine navbar Komponente:
import React, { Component } from 'react';
import User from './User.component';
import mockProfilePicture from './mockProfilePicture.jpg';
class Navbar extends Component {
constructor(props) {
super(props);
this.state = {
user: {
username: 'John',
profilePicture: mockProfilePicture
}
}
}
renderUser = (user) => {
return (
<User username={user.username} profilePicture={user.profilePicture}/>
)
};
render() {
return(
<div>
{this.renderUser(this.state.user)}
</div>
)
}
}
export default Navbar;
jedoch statt um den Benutzernamen und das Profilbild zu erhalten bekomme ich nichts (so als ob keine Daten an die Funktion übergeben werden).
Was bin ich falsch
In Ihr Codebeispiel renderUser ist keine Methode .... sieht wie ein Tippfehler aus. –
@john_omalley Dies ist Klasseneigenschaft, derzeit Stufe 2. Sie funktioniert mit der entsprechenden Babel-Voreinstellung. – dfsq