Prečo každý tweet odstránila

0

Otázka

Tak som pomocou Reagovať a urobil som trochu kód, ktorý má textbox s tlačidlo odoslať, a keď je niečo napísané v a predložiť ho vytvorí tweet text som napísal v a niektoré vopred vytvorených prvkov, ako môžete vidieť tu: [1]: https://i.stack.imgur.com/pvfSf.png Náhodné písmená s, Ako a Odstrániť tlačidlá, je to, čo som predložil každý čas.

To, čo som zmätený je dôvod, prečo každý jeden tweet dostane vymazané keď som sa použiť tento kód:

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

Ale keď som sa použiť tento kód, iba jeden konkrétny tweet som klikol Odstrániť na, dostane odstrániť:

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

V "tweet" po !== je prop som odovzdávanie.

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

Najlepšiu odpoveď

0

Máte konflikt medzi tweet používajú ako parameter na mape a tweet používa ako rekvizity, Javascript je rozhľadu vziať poslednej premennej, ktorá je mapa je tweet.

Takže keď si dať tweet na mape funkcia prepíše rekvizity tweet.

Môžete sa pozrieť na uzávery : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures

2021-11-23 21:08:34

V iných jazykoch

Táto stránka je v iných jazykoch

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