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 相关文章推荐
学习YUI.Ext 第四天--对话框Dialog的使用
Mar 10 Javascript
IE6浏览器下resize事件被执行了多次解决方法
Dec 11 Javascript
下拉菜单点击实现连接跳转功能的js代码
May 19 Javascript
js+css实现增加表单可用性之提示文字
Jun 03 Javascript
require.js深入了解 require.js特性介绍
Sep 04 Javascript
js+csss实现的一个带复选框的下拉框
Sep 29 Javascript
JQuery节点元素属性操作方法
Jun 11 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
Dec 22 Javascript
Angular 封装并发布组件的方法示例
Apr 19 Javascript
JS使用百度地图API自动获取地址和经纬度操作示例
Apr 16 Javascript
vue日历/日程提醒/html5本地缓存功能
Sep 02 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验证码(支持中文)
2007/02/14 PHP
用php实现的获取网页中的图片并保存到本地的代码
2010/01/05 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
2014/08/21 PHP
php计算给定时间之前的函数用法实例
2015/04/03 PHP
在 Laravel 中 “规范” 的开发短信验证码发送功能
2017/10/26 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
js取得url地址参数实例
2013/02/22 Javascript
深入理解javaScript中的事件驱动
2013/05/21 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
Javascript中call与apply的学习笔记
2014/09/22 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
Angular设置title信息解决SEO方面存在问题
2016/08/19 Javascript
JavaScript 闭包详细介绍
2016/09/28 Javascript
js实现百度地图定位于地址逆解析,显示自己当前的地理位置
2016/12/08 Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
2017/03/03 Javascript
vue.js 上传图片实例代码
2017/06/22 Javascript
限时抢购-倒计时的完整实例(分享)
2017/09/17 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
使用Sonarqube扫描Javascript代码的示例
2018/12/26 Javascript
JS绘图Flot如何实现可选显示曲线图功能
2020/10/16 Javascript
Python库urllib与urllib2主要区别分析
2014/07/13 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
2017/11/29 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
解决Python安装时报缺少DLL问题【两种解决方法】
2019/07/15 Python
解决pytorch DataLoader num_workers出现的问题
2020/01/14 Python
Python基于Hypothesis测试库生成测试数据
2020/04/29 Python
使用pytorch 筛选出一定范围的值
2020/06/28 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
小区保洁员岗位职责
2015/04/10 职场文书
2015年乡镇科普工作总结
2015/05/13 职场文书
党支部鉴定意见
2015/06/02 职场文书
Nginx开启Brotli压缩算法实现过程详解
2021/03/31 Servers
nginx.conf配置文件结构小结
2022/04/08 Servers