Keep-alive 首次打开新页面,已缓存组件被销毁

工程中使用keep-alive做缓存,并且配置路由元数据做控制,在使用中发现一个问题,首次打开新页面时会清空历史一打开的页面已有的缓存。
背景:如有页面A、B、C、D,开启了keep-alive缓存
现象:

  1. 已打开过页面A、B ,且进行操作数据,A、B 页面之间切换记录保留。
  2. 打开C页面(第一次打开),此时缓存A、B页面组件被销毁。
  3. 但继续上面步骤A、B、C页面之间的切换时组件被缓存,打开D面(第一次打开),则A、B、C页面组件被销毁。

在官方文档中没有足够的信息说明,也不知到是不是vue的机制问题,导致打开新路由组件会被销毁,遇到过的大佬们求解惑。