Есть меню:
<router-link :to="{name: 'statistics.all'}" replace class="router-link">
<i class="el-icon-pie-chart" style="color: rgb(255 255 190);"></i>
<span>{{ lang('statistic_click') }}</span>
</router-link>
После клика, попадаю в компонент, где и пытаюсь добавить query в url.
created() {
this.$root.$on('page_filter', (data) => {
let res = JSON.stringify(data);
let query = encodeURI(res);
this.$router.replace({query: {query} })
})
},
Работает ок, при изменении page_filter и при перезагрузке страницы, но вот когда клацаю по меню и снова пытаюсь клинкуть по router-link :to="{name: 'statistics.all'}", то уже query не подставляет и выдает ошибку
app.js:221996 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location.
Как заглушить знаю, достаточно обработчика catch
this.$router.replace({query: {query} }).catch(e => e)
Как мне сделать, чтоб this.$router.replace работал в любом случае, т.е. перебивал router-link :to?