Perché ogni tweet è di essere eliminati

0

Domanda

Quindi sto usando Reagire e ho fatto un po 'di codice che ha una casella di testo con un pulsante di invio, e quando qualcosa viene digitato e inviato, crea un tweet con il testo inserito e un po' di pre-made, come puoi vedere qui: [1]: https://i.stack.imgur.com/pvfSf.png Le lettere casuali con il Come ed Eliminare pulsanti è quello che ho presentato ogni volta.

Quello che non ho capito è perché ogni singolo tweet viene eliminato quando uso questo codice:

const deleteTweet = () =>{
    setTweets(tweets.filter(tweet => tweet !== tweet))
}

Ma quando uso questo codice, solo l'uno specifico tweet, ho cliccato su Elimina, viene rimosso:

const deleteTweet = () =>{
    setTweets(tweets.filter(t => t !== tweet))
}

Il 'tweet' dopo la !== è un pilone sto passando.

ecmascript-6 reactjs
2021-11-23 21:02:02
1

Migliore risposta

0

Si ha un conflitto tra tweet utilizzato come parametro e la mappa tweet utilizzati come oggetti di scena, Javascript scoping prendere l'ultima variabile che è la mappa del tweet.

Quindi, quando si mettono tweet mappa funzione sostituisce il puntelli tweet.

Potete dare un'occhiata alle chiusure : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures

2021-11-23 21:08:34

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................