有个需求需要用到keep-alive缓存页面,采用了include,需要匹配页面所在的组件名称,但是我们的所有页面引用的组件都是同一个,通过后端返回的数据去渲染不同的页面,此时为了缓存页面,就需要修改路由配置时的页面名称。

折腾了半天,其实简单的一批

import renderView form '@/views/renderView'
{
	path:'/index',
	name:'自定义的名字',
	component:{
		components:{renderView},
		name:'自定义的名字',
		template:'<renderView />'
	}
}

这样你想命名成啥样都行,用的是component下面的name,路由的name是我们项目里需要,所以保持一致了,不管原组件是啥名字,include匹配的都是components里重命名的名称,完美~

我们include是取的$route.name,但是实际匹配的是compinent下的名称,两个保持一致,就可以方便获取和匹配了。

Logo

前往低代码交流专区

更多推荐