Код, который я делюсь, не относится к виджету, а взят из компонента, который мы выпустили для загрузки здесь на Meta.
В нём мы используем роутер вместе с @discourseComputed, чтобы проверить, изменился ли маршрут, и отрисовать содержимое в зависимости от этого.
Вы можете изучить код подробнее, если вам интересно, как он работает.