По поводу "#" и добавления в урл пути - Вы используете createWebHashHistory, который использует именно хеши для роутинга.
Нужно избавиться от # - createWebHistory. (читаем доку
https://router.vuejs.org/guide/essentials/history-...)
И используйте формат роутинга
routes: [
{
path: "/routePath",
name: "routeName",
component: routeComponent,
},
...
]
<router-link :to="{ name: 'routeName' }">