vue2.0+按需引入element-ui报错

项目使用vue脚手架自动生成的,vue版本为^2.5.16.项目中需要按需使用element-ui,根据element-ui的官方文档,一开始在babel.config.js文件中修改配置
module.exports = {
  presets: [
    "@vue/app",
    ["es2015", { "modules": false }]
  ],
  "plugins": [["component", [
    {
      "libraryName": "element-ui",
      "styleLibraryName": "theme-chalk"
    }
  ]]]
};
运行项目报错:
Error: .plugins[0][1] must be an object, false, or undefined
at assertPluginItem (D:Vue-Tree ode_modules\_@babel_core@7.4.5@@babelcorelibconfigvalidationoption-assertions.js:244:15)

意思是plugins里面不能再使用数组作为参数,修改写法
module.exports = {
  "presets": [
    "@vue/app",
    ["@babel/preset-env", { "modules": false }]
  ],
  "plugins": [["component", // 删掉[]
    {
      "libraryName": "element-ui",
      "styleLibraryName": "theme-chalk"
    }
  ]]
}
运行没有报错,引入element-ui也可以使用了
 
另外在按需引入的时候还发现一个问题,引入
import {Icon} from 'element-ui';
Vue.use(Icon)
一开始使用的时候没有问题,修改了babel配置文件后,页面显示不出来了,一开始以为是babel配置写错了,核对后没有写错,再多引入'element-ui的一个组件后,
import {Icon, Button} from 'element-ui';
Vue.use(Icon)
Vue.use(Button)
原来的icon又能正常显示了,这个原因我也不太清楚
原文地址:https://www.cnblogs.com/steamed-twisted-roll/p/11131015.html