vue-element入坑体验

最近做了一个基于Vue2.x的实践,之前觉得element-ui项目不错,所以就拿来使用了,中间出现了一些坑,统一在这里说一下体验吧。

1. 【解决】Table带checkbox Cannot read property ‘value’ of undefined

官网例子Table带checkbox。Chrome下面出现此问题。IE没有。

三个页面,一个页面含有上述组件,另外两个没有,使用了vue-router,在切换的时候出现此问题。

1
2
3
store: function store() {
return this._checkboxGroup.value; // 这里undefined
}

解决方式:

把路由改为懒加载模式,就好了。因为这样的话,一个页面不会去加载其他页面的js,肯定没有问题。至于为什么会出现这个BUG,还不太清楚。

懒加载示例如下:

1
2
3
routes: [
{ path: '/', component: resolve => require(['../App'], resolve) },
]

参考:https://github.com/ElemeFE/element/issues/1717

2. 【解决】element ui _vm._h is not a function

这个问题出现的吊就吊在,第一天没问题,上传到git,第二天clone下来再运行就挂了。让人一度怀疑人生。这个问题在github issues上给出了解决方式。

解决方式:

Vue 2.1.5 将 _h 重命名为 _c,而 Element 目前发的版本都是用以前的 compiler 编译的,导致新版 runtime 无法运行 Element。目前的解决方案是锁定 Vue 的版本为 2.1.4

1
2
3
4
# 重新安装一下版本
"vue-template-compiler": "2.1.4"
"vue-loader": "10.0.0"
"vue": "2.1.4"

参考: