在vue项目中同时使用element-ui和mint-ui,的时候,.babelrc配置文件怎么写

我们安装vue组件库的时候,考虑到大小问题,需要根据需要仅引入部分组件

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

但是在配置  .babelrc 文件的时候,可能会有同时引入两个ui组件库该如何实现的疑惑

配置  .babelrc 文件

单独配置mint-ui的时候

module.exports = {
  presets: [
    '@vue/app', 
    ['es2015', { 'modules': false }]
  ],
  'plugins': [
    [
      'component',
      {
        'libraryName': 'mint-ui',
        'style': true
      }
    ]
  ]
}

单独配置element-ui的时候

module.exports = {
  presets: [
    '@vue/app', 
    ['es2015', { 'modules': false }]
  ],
  'plugins': [
    [
      'component',
      {
        'libraryName': 'element-ui',
        'styleLibraryName': 'theme-chalk'
      }
    ]
  ]
}

两个同时使用的时候

第一种方法

  • 首先修改 .babelrc 文件

    {
      "presets": [["es2015", { "modules": false }]],
      "plugins": [
        ["component",
          [{
            "libraryName": "mint-ui",
            "style": true
          },
            {
              "libraryName": "element-ui",
              "styleLibraryName": "theme-chalk"
            }]
        ]
      ]
    }
  • 安装 babel-preset-es2015

    $ npm install babel-preset-es2015 -D

第二种方法

  • 在安装一个

    npm install babel-plugin-import -S
  • 然后修改

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

配置好之后引用

main.js 文件

import Vue from 'vue'
import App from './App.vue'
import Element from 'element-ui'
import {Button } from 'mint-ui/lib/button';

Vue.component(Button.name, Button);
Vue.use(Element)



new Vue({
  el: '#app',
  render: h => h(App)
})

转载于:https://www.cnblogs.com/amcy/p/10352301.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值