Вью роутер.Как узнать, была ли навигация по нажатой ссылке или программной - PullRequest
0 голосов
/ 11 февраля 2019

Я должен знать, была ли навигация запущена Javascrpt с помощью

this.$router.push("...") 

или нажала на ссылку типа

<router-link :to="...">

Как я могу это выяснить?

1 Ответ

0 голосов
/ 11 февраля 2019

Нет никакой разницы между ними, потому что <router-link :to="..."> также разрешится в this.$router.push("...").

Чтобы узнать разницу между ними, вы можете использовать такие параметры запроса, как this.$router.push("link?clicked=F") и <router-link :to="link?clicked=T">.Используя эти параметры запроса, вы можете легко различить ссылку маршрутизатора, по которой щелкнули и не щелкнули.

Чтобы получить доступ к параметру запроса, используйте this.$route.query.<param-name> наподобие this.$route.query.clicked, которое даст T из F соответственно.

...