- vue-cli@5.0.8 keep-alive导致热更新失效
<RouterView v-slot="{ Component, route }">
<keep-alive>
<component :is="wrap(route.fullPath, Component)" />
</keep-alive>
</RouterView>
...
const wrapperMap = new Map();
// 为keep-alive里的component接收的组件包上一层自定义name的壳.
function wrap(wrapperName, component) {
let wrapper;
// 重点就是这里,这个组件的名字是完全可控的,
// 只要自己写好逻辑,每次能找到对应的外壳组件就行,完全可以写成任何自己想要的名字.
// 这就能配合 keep-alive 的 include 属性可控地操作缓存.
if (wrapperMap.has(wrapperName)) {
wrapper = wrapperMap.get(wrapperName);
} else {
wrapper = {
name: wrapperName,
render() {
// return h("div", { className: "vaf-page-wrapper" }, component);
return h(component);
},
};
wrapperMap.set(wrapperName, wrapper);
}
return h(wrapper);
}
- element ui 表格el-table宽度不能自适应
答案见链接