Lieber Rolf,
die "mach erstmal und zieh's dann gerade" Technik finde ich suboptimal
OK, das geht tatsächlich besser.
const fadeAudio = () => { if (volume > 10) { volume -= 10; // volume ist nun noch größer 0, neuen Aufruf buchen setTimeout(fadeAudio, 100); } else { volume = 0; } this.intro.current.volume = volume / 100; };
Hier wird die Sache mit this.setState({ muted: muted }); nicht mehr berücksichtigt. Der Player ist also nicht mehr auf lautlos gestellt, was bei volume=0 aber sinnvoll ist.
Dass man so einen Test weniger hat, ist ein netter (aber für Laufzeit irrelevanter) Nebeneffekt.
Stimmt. Danke für die Optimierung.
Liebe Grüße
Felix Riesterer
 nicht angemeldet
 nicht angemeldet Matthias Apsel
 Matthias Apsel Gunnar Bittersmann
 Gunnar Bittersmann Rolf B
 Rolf B