当我点击一个链接时,我想刷新我的"SPA",而不是看到最小组件更换的默认行为.

这听起来像是我在扼杀SPA最好的部分,但我觉得没有刷新的链接带来的麻烦多于好处——我认为最糟糕的是,如果你点击当前页面的链接,页面似乎没有响应,这在我看来是相当混乱的:

<!-- You click, then of course nothing happens when you're at HelloWorld -->
<router-link :to="{name: 'HelloWorld'}">link</router-link>

推荐答案

好吧,我不知道一个普通的<a>标签和我期望的if history mode is used标签一样有效,所以我最终做了以下工作:

<a :href="$router.resolve({name: 'HelloWorld'}).href">link</a>

或者只是:

<a href="/">link</a>

Vue.js相关问答推荐

为什么v-show需要组件的包装元素?

为什么元素会从Vue 3中的TransitionGroup左上角出现?

将 html 文件移出 dist vite 中的 src 文件夹

可组合数据获取示例

Vue composition api: 访问