I noticed a ScrollTrigger consequently stopped working whenever I killed a completely unrelated timeline and ScrollTrigger... If I only kill either one of them, it survives. The codepen clearly shows the bug.
I had the exact same situation (with Vue.js). I kill'ed the ScrollTrigger when my component was about to die (onBeforeUnmount). But it turned out that it's too late.
Using the above advice (ScrollTrigger.getAll().forEach(t => t.kill())) before route changes solved it for me.