Comment puis-je effacer des états ou tableau vide sur cliquez de réagir 0.14 ES6?

Je suis rendu un tableau dans un modal. Une fois que le modal ferme j'ai besoin de vider le tableau.Le code suivant met à jour le tableau, mais pas effacer tableau sur cliquez de closeModal.

constructor(props,context) {
   super(props,context);
   this.state = {
      myArray: []
   };

 }

 pushData(newVar) {
   this.setState((state) => {
       myArray: state.myArray.push(newVar)
   });
 }

 closeModal() {
   this.setState({
       myArray: []
   })
 }
  • Quelque chose comme cela.état.myarray=[]
  • Hey Désolé, vous avez raison @Antonio cela.état.myarray=[] corrigé mon problème.
  • Envoyer des données semble bizarre... j'aurais pu écrire cela.état.montableau.push(newVar)
  • c'.état.montableau.push(newVar) cette façon de pousser n'a pas fonctionné pour moi. J'ai essayé .concat trop mais il n'a pas de travail
  • Êtes-vous une erreur? Il n'est pas clair ce qui est cassé de votre question. Quel est votre render fonction?
  • Désolé pour le problème donné, j'ai découvert la closeModal ne m'a appelé sur componentWillUnmount. Alors je l'ai Changé de retour à mon ancien code et fixé cette.setState({montableau: []}); fonctionne.
  • state.myArray.push(newVar) ne fonctionnera pas comme prévu non plus. Array.prototype.push renvoie la longueur de la nouvelle tableau, pas le tableau avec la nouvelle valeur. setState(state => ({myArray: state.myArray.concat(newVar)})) est plus proche de ce que vous cherchez.