Nuxt配置Element-UI按需引入的操作方法


Posted in Javascript onJuly 06, 2020

Nuxt 使用 create-nuxt-app 创建项目时,选择使用 Element-UI 为默认组件库,发现 Nuxt 没有开启 Element-UI 的按需引入配置,需要自行配置。

安装依赖

在 create-nuxt-app 中没有选择 Element-UI 的先安装。

npm install element-ui --save

或者

yarn add element-ui

Element-UI 开启按需引入,必须安装 babel-plugin-component 插件。

npm install babel-plugin-component --save-dev

或者

yarn add babel-plugin-component

安装完成后,在文件根目录创建(或已经存在) plugins/ 目录下创建相应的插件文件,创建名为:element-ui.js 的文件。

// element-ui.js
import Vue from 'vue'
import {
 Container,
 Header,
 Aside,
 Main,
 Menu,
 MenuItem,
 Button,
 Form,
 FormItem,
 Input
} from 'element-ui'
import locale from 'element-ui/lib/locale/lang/en'

const components = [
 Container,
 Header,
 Aside,
 Main,
 Menu,
 MenuItem,
 Button,
 Form,
 FormItem,
 Input
];

const Element = {
 install (Vue) {
 components.forEach(component => {
  Vue.component(component.name, component)
 })
 }
}

Vue.use(Element, { locale })

配置 plugins 选项

在 nuxt.config.js 文件中,配置 plugins 选项。

module.exports = {
 /*
 ** Plugins to load before mounting the App
 ** https://nuxtjs.org/guide/plugins
 */
 plugins: ["@/plugins/element-ui"],
}

Nuxt 默认为开启 SSR,采用服务端渲染,也可以手动配置关闭 SSR,配置为:

module.exports = {
 /*
 ** Plugins to load before mounting the App
 ** https://nuxtjs.org/guide/plugins
 */
 plugins: [
 {
  src: "@/plugins/element-ui",
  ssr: false // 关闭ssr
 }
 ],
}

如果在 create-nuxt-app 中默认选了 Element-UI 的,还需要将 Element-UI 的全局样式去掉,即在 nuxt.config.js 中:

module.exports = {
 /*
 ** Global CSS
 */
 css: ['element-ui/lib/theme-chalk/index.css'],
}

删除 'element-ui/lib/theme-chalk/index.css' 作为全局样式的打包配置,改为

module.exports = {
 /*
 ** Global CSS
 */
 css: [],
}

配置 babel 选项

在 nuxt.config.js 文件中,在选项 build 中配置 babel 选项:

module.exports = {
 /*
 ** Build configuration
 ** See https://nuxtjs.org/api/configuration-build/
 */
 build: {
 babel: {
  "plugins": [
  [
   "component",
   {
   "libraryName": "element-ui",
   "styleLibraryName": "theme-chalk"
   }
  ]
  ]
 }
 }
}

到此,Element-UI 按需引入配置完成。

总结

到此这篇关于Nuxt配置Element-UI按需引入方法的文章就介绍到这了,更多相关Nuxt 按需引入Element-UI内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
js 复制或插入Html的实现方法小结
May 19 Javascript
Javascript模块化编程(一)AMD规范(规范使用模块)
Jan 17 Javascript
js实现上传图片之上传前预览图片
Mar 25 Javascript
JS使用parseInt解析数字实现求和的方法
Aug 05 Javascript
jquery及js实现动态加载js文件的方法
Jan 21 Javascript
基于JavaScript实现 网页切出 网站title变化代码
Apr 03 Javascript
JS简单随机数生成方法
Sep 05 Javascript
了解ESlint和其相关操作小结
May 21 Javascript
基于Angular中ng-controller父子级嵌套的相关属性详解
Oct 08 Javascript
Koa 使用小技巧(小结)
Oct 22 Javascript
Vue项目路由刷新的实现代码
Apr 17 Javascript
Element Badge标记的使用方法
Jul 27 Javascript
解决Nuxt使用axios跨域问题
Jul 06 #Javascript
js实现星星打分效果
Jul 05 #Javascript
jQuery实现简单飞机大战
Jul 05 #jQuery
javascript实现贪吃蛇小练习
Jul 05 #Javascript
jQuery实现简单日历效果
Jul 05 #jQuery
jQuery实现飞机大战小游戏
Jul 05 #jQuery
原生js实现随机点名
Jul 05 #Javascript
You might like
PHP数组对比函数,存在交集则返回真,否则返回假
2011/02/03 PHP
php 中英文语言转换类代码
2011/08/11 PHP
php将HTML表格每行每列转为数组实现采集表格数据的方法
2015/04/03 PHP
curl和libcurl的区别简介
2015/07/01 PHP
yii2中结合gridview如何使用modal弹窗实例代码详解
2016/06/12 PHP
PHP 实现浏览记录并按日期分组
2017/05/11 PHP
如何通过Apache在本地配置多个虚拟主机
2020/07/29 PHP
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
dwr spring的集成实现代码
2009/03/22 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
2014/06/23 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
JavaScript原生对象之Number对象的属性和方法详解
2015/03/13 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
2015/09/04 Javascript
js实现移动端微信页面禁止字体放大
2017/02/16 Javascript
javascript 动态生成css代码的两种方法
2017/03/17 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
纯javascript前端实现base64图片下载(兼容IE10+)
2018/09/14 Javascript
在 Vue 应用中使用 Netlify 表单功能的方法详解
2019/06/03 Javascript
详解JavaScript作用域、作用域链和闭包的用法
2020/09/03 Javascript
[29:23]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场1
2014/05/23 DOTA
[02:09]EHOME夺得首届辉夜杯冠军—现场颁奖仪式
2015/12/28 DOTA
Python中使用PIL库实现图片高斯模糊实例
2015/02/08 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
解决nohup重定向python输出到文件不成功的问题
2018/05/11 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
Python 使用 environs 库定义环境变量的方法
2020/02/25 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
发现两个有趣的CSS3动画效果
2013/08/14 HTML / CSS
西班牙香水和化妆品购物网站:Arenal Perfumerías
2019/03/01 全球购物
英国领先的在线高尔夫商店:Gamola Golf
2019/11/16 全球购物
美团网旗下网上订餐平台:美团外卖
2020/03/05 全球购物
面试求职的个人自我评价
2013/11/16 职场文书
12月红领巾广播稿
2014/02/13 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
工程进度款催款函
2015/06/24 职场文书