Bonjour, la donnée this.timer contient l'identiant de la ressource (ressource id) qui à été ouverte par l'appel à setInterval (en principe la ressource id s'exprime sous la forme d'un nombre entier).
Le fait de ne pas stocké la ressource id n'empêche pas le timer de fonctionner (c'est uniquement l'invalidité de la fonction de rappel qui pourrait l'empêché de fonctionner)
par contre cela empêche de fermer le l'interval car au moment où ton composant et démonté de l'arbre (lorsque que la méthode de cycle de vie componentWillUnmount et déclenchée) tu devrais être en capacité de stoppé la consommation de ressource par ton composant.
Pour un timer (setInterval) la libération de ressource ce fait via la fonction clearInterval
qui a besoin que d'un seul paramètre la ressource id qu'il doit stoppé.
une implémentation correcte de setInterval dans un composant React pourrait être:
Si la ressouce id n'est pas capturé
this.timeId = setInterval(this.onIncrement, 1000);
et que l'on écrit cela à la place
setInterval(this.onIncrement, 1000);
notre interval ne sera pas fermé lorsque le composant sera démonté
Ce qui provoquerait une fuite de mémoire qui serait visible dans la console via un message d'erreur qui indiquerait:
Can't perform a React state update on an unmounted component