vue-cli项目按需引入element-ui实际操作

1、npm安装

> npm i element-ui -S

2、按需引入:

借助 babel-plugin-component,我们可以只引入需要的组件,以达到减小项目体积的目的。

首先,安装 babel-plugin-component:

> npm install babel-plugin-component -D

然后,将 .babelrc 修改为:

     {
      "presets": [["es2015", { "modules": false }]],
      "plugins": [
        [
          "component",
          {
            "libraryName": "element-ui",
            "styleLibraryName": "theme-chalk"
          }
        ]
      ]
    }
报错:
  • Module build failed: Error: Couldn't find preset "es2015" relative to directory "E:\workSpace\my-project" *
    ```
    npm install babel-preset-es2015 --save-dev
npm install babel-preset-es2015 时,你会发现有如下的 Deprecated警告:
![](https://images2018.cnblogs.com/blog/1363391/201806/1363391-20180611180514714-140432568.png)
>原因是Babel 的官网上在2017年9月宣布 ES2015 / ES2016/ ES2017 等等 ES20xx 时代的 presets 通通被废弃(deprecated),取而代之的是 babel-preset-env,并且承诺它将成为“未来不会过时的(future-proof)”解决方案。
    **如何迁移**
    首先卸载原来的 preset,然后安装 babel-preset-env:
    1. npm uninstall --save-dev babel-preset-es2015
    2. npm install --save-dev babel-preset-env@next
运行报错如下图:
![](https://images2018.cnblogs.com/blog/1363391/201806/1363391-20180611175654517-734743540.png)

![](https://images2018.cnblogs.com/blog/1363391/201806/1363391-20180611175831436-1127147158.png)


babel-preset-env(7.0版本)报错,查这类型错误说是软件版本与webpack不兼容。
解决方法:卸载7.0版,本安装"babel-preset-es2015":"^6.24.1"运行正常
### 最终.babelrc文件

{
"presets": [["es2015", { "modules": false,"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
} }],"stage-2"],
"plugins": [
"transform-runtime",
"transform-vue-jsx",
[
"component",
{
"libraryName": "element-ui",
"styleLibraryName": "theme-chalk"
}
]
]
}
```

参考文章1:https://www.cnblogs.com/MrZouJian/p/8601416.html
参考文章2:https://www.cnblogs.com/hjblog/p/8640695.html
Element官网:http://element.eleme.io/#/zh-CN/component/quickstart
查看.babelrc文件的配置参考文档https://www.cnblogs.com/MrZouJian/p/8601416.html
babel之配置文件.babelrc入门详解http://www.sdky.org/news/2018-04-06/72180.html

转载于:https://www.cnblogs.com/skylineStar/p/9168077.html

你可能感兴趣的:(vue-cli项目按需引入element-ui实际操作)