项目中使用的是elemnetUI组件, 问题出现的情况是这样:在el-tab标签页中遍历el-tab-pane面板,面板中使用的是动态组件component,在启动项目时,页面出现卡死问题,一直处于加载状态没有反应。
问题:
项目中使用的element-ui版本是2.7.0,vue的版本是2.5.2,vue-template-compiler的版本是2.5.2。
页面中使用如下:
<div class="wrapper">
<el-tabs size="mini" v-model="activeTabName" closable @tab-click="clickTab" @tab-remove="removeTab">
<template v-for="tab in tabs">
<el-tab-pane size="mini" :label="tab.label" :name="tab.label" :key="tab.label">
<component :is='tab.component'></component>
</el-tab-pane>
</template>
</el-tabs>
</div>
页面中切换面板,页面直接卡死,在网上找了好多办法文章也没有解决,后来无意中发现一篇文章中说elementUI版本问题,有的人说是vue版本问题,后来索性都更新一下;
- 先卸载项目中安装的element-ui
npm uninstall element-ui --save
删除后清除缓存:
npm cache clear -f
- 卸载项目中vue 和 vue-template-compiler
npm uninstall vue --save
npm uninstall vue-template-compiler
之后清除一下缓存:
npm cache clear -f
- 卸载完成之后在重新安装一下,首先安装element-ui,可以安装指定版本,或者直接安装最新版本
npm install element-ui@2.9.2 --save // 这是安装指定版本
npm install element-ui --save // 安装最新版本
- 安装vue 和 vue-template-compiler(二者版本要保持一致)
npm install vue --save // 安装最新版本
npm install vue@2.6.10 --save // 安装指定版本
npm install vue-template-compiler // 安装最新版本
npm install vue-template-compiler@2.6.10 // 安装指定版本
- 全部安装完成之后重启项目就好啦 ~
npm run dev