donc j'ai li em> éléments avec une propriété clés et je veux accéder à la propriété clé de ma fonction J'essaie quelque chose comme ceci P> const temp1 = temp.map( (x,i) => {
return(
<li key={i}>{x}
<button onClick={this.editTask.bind(this)}>Edit</button>
<button onClick=
{this.deleteTask.bind(this)}>Delete</button>
</li>
)
})
3 Réponses :
Essayez-le en passant dans la fonction
<li key={i}>{x}
<button onClick={this.editTask.bind(this,i)}>Edit</button>
<button onClick={this.deleteTask.bind(this,i)}>Delete</button>
</li>
deleteTask(key){
event.preventDefault();
//You can access key here
console.log(key)
//this works perfectly fine
}
Lorsque j'utilise ce `` `Supprimerask (clé) {//event.preventdefault (); console.log (clé); //console.log(Ce.props.key); } `` `ça marche bien. mais quand j'utilise deletetask (événement, clé) {Event.PreventDefault (); console.log (clé); //console.log(Ce.props.key); } code> il donne une erreur que TypeError: Event.PreventDefault n'est pas une fonction
Que diriez-vous d'ajouter une clé de données sur le
console.log(event.currentTarget.parentElement.dataset['key']);
Voir si cela fonctionne pour vous:
p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script> <div id="root"></div>