Vue2 中同一组件,不同路由

134 阅读1分钟

作为开发者,我们通常希望组件能够高度重用。这就是为什么当 Vue 组件在两个不同的路径中使用时,并不会重新渲染父组件,尽管组件是相同的但是展示的视图不同。这是 Vue 为了优化应用程序的一种策略。

要解决这个问题,你只需要在 router-view 中添加一个 key 属性,可以使用路由的名称或者路径作为 key。

demo:

  <div>
    <!-- 可以使用 $route.name 或者 $route.path -->
    <router-view :key="$route.name" />
  </div>
</template>