Réagir: "cela.l'état " n'est pas défini à l'intérieur d'un composant de la fonction
Je vais avoir du mal à accéder à this.state
en fonctions à l'intérieur de mon composant. J'ai déjà trouvé cette question sur DONC et a ajouté que l'a suggéré le code de mon constructeur:
class Game extends React.Component {
constructor(props){
super(props);
...
this.state = {uid: '', currentTable : '', currentRound : 10, deck : sortedDeck};
this.dealNewHand = this.dealNewHand.bind(this);
this.getCardsForRound = this.getCardsForRound.bind(this);
this.shuffle = this.shuffle.bind(this);
}
//error thrown in this function
dealNewHand(){
var allCardsForThisRound = this.getCardsForRound(this.state.currentRound);
}
getCardsForRound(cardsPerPerson){
var shuffledDeck = this.shuffle(sortedDeck);
var cardsForThisRound = [];
for(var i = 0; i < cardsPerPerson * 4; i++){
cardsForThisRound.push(shuffledDeck[i]);
}
return cardsForThisRound;
}
shuffle(array) {
...
}
...
...
Il ne fonctionne toujours pas. this.state.currentRound
est pas défini. Quel est le problème?
cant vraiment dire ce qui se passe à partir de cela, il a l'air bien. Pouvez-vous télécharger ce dans un js fiddle?
Je ne sais pas comment faire pour le faire réagir avec code.
la base de violons pour es6 et de réagir: jsfiddle.net/jhonvolkd/nrd015dm
Ne pouvez pas le faire fonctionner, désolé, merci quand même
Quelques recommandations: 1) l'Utilisation de la graisse flèche fonctions (
Je ne sais pas comment faire pour le faire réagir avec code.
la base de violons pour es6 et de réagir: jsfiddle.net/jhonvolkd/nrd015dm
Ne pouvez pas le faire fonctionner, désolé, merci quand même
Quelques recommandations: 1) l'Utilisation de la graisse flèche fonctions (
() =>
) au lieu de function
et self
. 2) Ne pas muter état (newState = this.state; newState.currentRount = gameData.currentRound; this.setState(newState)
, au lieu de passer les modifications de l'état comme setState({currentRound: gameData.currentRound})
OriginalL'auteur hellogoodnight | 2016-05-11
Vous devez vous connecter pour publier un commentaire.
Je suis venu avec quelque chose qui a travaillé. J'ai changé le code pour la liaison
getCardsForRound
dans le constructeur:OriginalL'auteur hellogoodnight
Écrire votre fonctionne de cette manière:
http://www.react.express/fat_arrow_functions
OriginalL'auteur ShaTin