Вы можете использовать cook ie или флаг локального хранилища, чтобы определить, был ли пользователь на этой странице раньше.
Пример использования локального хранилища:
<template>
<div id="app" >
<div id="nav">
<router-link to="/home">Home</router-link>
<router-link to="/User">{{$t('user-text')}}
<div class="tooltip">
<span class="badge">!</span>
<span class="tooltiptext" v-if="showTooltip">{{ $t('visit-page-for-first-time') }}</span>
</div>
</router-link>
</div>
</div>
</template>
<script>
export default {
data() {
return {
showTooltip: false
}
},
created() {
const alreadyVisited = localStorage.getItem('already_visited');
if (!alreadyVisited) {
this.showTooltip = true;
this.setAlreadyVisited();
}
},
methods: {
setAlreadyVisited() {
localStorage.setItem('already_visited', true)
}
},
watch: {
$route (to, from) {
this.showTooltip = false;
}
}
}
</script>
Это будет , по умолчанию скрыть всплывающую подсказку. Затем в ловушке created
мы проверяем, существует ли элемент localStorage с ключом already_visited
, и если нет, мы показываем всплывающую подсказку. В противном случае оставим его без рендеринга.