Natomiast to, że "powinno", nie znaczy, że tak będzie.
Równie dobrze taki kod
<Button onClick={deleteImage(id)}>Usuń</Button>
Może wynikać z czyjegoś błędu. Załóżmy, że funkcja deleteImage naprawdę kasuje element o danym id. Wtedy dane elementy zostaną po prostu skasowane zanim użytkownik kliknie. Bo może ktoś powinien zrobić to:
<Button onClick={() => deleteImage(id)}>Usuń</Button>
ale z jakichś względów zrobił co innego.
Dlatego ważny jest kontekst (reszta kodu). Bo czasem wydaje nam się, że coś ma sens, a w rzeczywistości nie ma sensu i jest wynikiem błędu (albo odwrotnie - czasem może się wydawać, że programista popełnił błąd, a w rzeczywistości wiedział, co robi).