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 相关文章推荐
javascript中的=等号个数问题两个跟三个有什么区别
Oct 23 Javascript
使用jquery实现以post打开新窗口
Mar 19 Javascript
js鼠标点击图片切换效果代码分享
Aug 26 Javascript
jQuery+pjax简单示例汇总
Apr 21 jQuery
jQuery 中msgTips 顶部弹窗效果实现代码
Aug 14 jQuery
react.js 父子组件数据绑定实时通讯的示例代码
Sep 25 Javascript
setTimeout时间设置为0详细解析
Mar 13 Javascript
webpack+react+antd脚手架优化的方法
Apr 02 Javascript
JS实现的冒泡排序,快速排序,插入排序算法示例
Mar 02 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
Ant Design的可编辑Tree的实现操作
Oct 31 Javascript
在JavaScript中查找字符串中最长单词的三种方法(推荐)
Jan 18 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常用Stream函数集介绍
2013/06/24 PHP
php对二维数组按指定键值key排序示例代码
2013/11/26 PHP
PHP安装memcached扩展笔记
2015/05/28 PHP
php导出中文内容excel文件类实例
2015/07/06 PHP
用PHP写的一个冒泡排序法的函数简单实例
2016/05/26 PHP
Javascript 面向对象 继承
2010/05/13 Javascript
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
javascript:json数据的页面绑定示例代码
2014/01/26 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
2014/04/07 Javascript
$(document).ready(function() {})不执行初始化脚本
2014/06/19 Javascript
nodejs中转换URL字符串与查询字符串详解
2014/11/26 NodeJs
javaScript事件机制兼容【详细整理】
2016/07/23 Javascript
javascript另类方法实现htmlencode()与htmldecode()函数实例分析
2016/11/17 Javascript
nodejs连接mongodb数据库实现增删改查
2016/12/01 NodeJs
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
Vue 自定义动态组件实例详解
2018/03/28 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
2018/05/14 Javascript
layui select 禁止点击的实现方法
2019/09/05 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
[54:45]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 Optic vs OG
2018/04/02 DOTA
Linux下使用python调用top命令获得CPU利用率
2015/03/10 Python
Python读取Excel的方法实例分析
2015/07/11 Python
Python编程判断这天是这一年第几天的方法示例
2017/04/18 Python
python 调用c语言函数的方法
2017/09/29 Python
python把1变成01的步骤总结
2019/02/27 Python
python简单实现矩阵的乘,加,转置和逆运算示例
2019/07/10 Python
简单了解django文件下载方式
2020/02/10 Python
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
Java中实现多态的机制
2015/08/09 面试题
Linux管理员面试题 Linux admin interview questions
2016/07/08 面试题
Linux常见面试题
2013/03/18 面试题
食堂个人先进事迹
2014/01/22 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
停车场管理协议书范本
2014/10/08 职场文书
python元组打包和解包过程详解
2021/08/02 Python
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL