Vue doesnt change execute mounted() on vue route change, so it's better we use a watcher to set page titles.

This commit is contained in:
Karlis Cudars 2021-07-21 03:38:12 +03:00
parent b9f401cd39
commit 7295c58794
3 changed files with 29 additions and 4 deletions

View file

@ -42,6 +42,35 @@ export default {
break;
}
},
watch: {
$route: {
immediate: true,
handler(to) {
switch(to.path) {
case "/register":
document.title = "Register - Piped";
break;
case "/login":
document.title = "Login - Piped";
break;
case "/import":
document.title = "Import - Piped";
break;
case "/preferences":
document.title = "Preferences - Piped";
break;
case "/feed":
document.title = "Feed - Piped";
break;
case "/watch":
document.title = "Loading.. - Piped";
break;
default:
document.title = "Trending - Piped";
break;
}
}
},
};
</script>

View file

@ -63,8 +63,6 @@ export default {
};
},
mounted() {
document.title = "Feed - Piped";
this.fetchFeed().then(videos => (this.videos = videos));
},
methods: {

View file

@ -25,8 +25,6 @@ export default {
};
},
mounted() {
document.title = "Trending - Piped";
let region = this.getPreferenceString("region", "US");
this.fetchTrending(region).then(videos => (this.videos = videos));