(笔记)vue3引入Element-plus

1、Element-plus下载

想要在vue3使用Element-plus,就要先下载Element-plus。下面是三种下载Element-plus的方法。

npm

> npm install element-plus --save

> cnpm install element-plus --save

yarn

> yarn add element-plus

pnpm

> pnpm install element-plus

2、Element-plus引入

引入方式一:完整引入

顾名思义,这种引入方式是把整个 Element-plus都引入到项目中,所以所用内存比较大。但这种方式操作简单、容易上手也会受到很多人的青睐。

在 main.js中

import { createApp } from 'vue'

import ElementPlus from 'element-plus'

import 'element-plus/dist/index.css'

import App from './App.vue'

const app = createApp(App)

app.use(ElementPlus)

app.mount('#app')

引入方式二:按需引入

顾名思义,是根据你在项目中的使用情况,向项目中引入你使用的部分,所以在打包的时候内存比较小。但这种引入方式需要你使用额外的插件来导入要使用的组件,操作较多。但不用担心,本文会给出所有代码,直接复制进去就好了。

首先要安装 unplugin-vue-componentsunplugin-auto-import这两款插件

cnpm install -D unplugin-vue-components unplugin-auto-import

然后在 vue.config.js文件中引入依赖。

const { defineConfig } = require('@vue/cli-service')

// Element Plus 的三个变量

const AutoImport = require('unplugin-auto-import/webpack')

const Components = require('unplugin-vue-components/webpack')

const { ElementPlusResolver } = require('unplugin-vue-components/resolvers')

module.exports = defineConfig({

transpileDependencies: true,

// Element Plus 自动按需导入所用部分

configureWebpack: ({

plugins: [

AutoImport({

resolvers: ElementPlusResolver(),

}),

Components({

resolvers: ElementPlusResolver(),

}),

]

})

})

3、错误解决

在启动项目的时候,可能会有两个报错 AutoImport is not a function 和 Components is not a function,这是因为你的插件版本过高导致的,把版本设置低一点就好了。在 package.json 文件中找到 unplugin-auto-import 和 unplugin-vue-components,设置成低版本就窝开了。

报错 AutoImport is not a function

是因为 unplugin-auto-import 的版本过高,可以使用 ^0.16.7 版本的。

报错 Components is not a function

是因为 unplugin-vue-components 的版本过高,可以使用 ^ 0.25.2 版本的。

设置过程:

把 unplugin-auto-import 和 unplugin-vue-components 改成对应版本后保存,此时下载的插件版本还没有变,可以把对应的插件删了后重新下载。不过我一般是直接把 node_modules文件删了,然后重新 cnpm install,这样它会根据你的配置版本进行下载。


好记性不如烂笔头,在学习的路上留下点痕迹。希望能给大家带来帮助,也期待您的点赞评论。如有不足之处,还请斧正。

相关推荐
随风一样自由8 小时前
【前端独角兽】刚进入前端领域的前端开发用jQuery还是Vue3?
前端·javascript·vue3·jquery
IMPYLH8 小时前
HTML 的 <data> 元素
前端·html
YHHLAI9 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
weixin_BYSJ19879 小时前
SpringBoot + MySQL 乒乓球运动员信息管理系统项目实战--附源码04954
java·javascript·spring boot·python·django·flask·php
沪飘大军10 小时前
ll-llm:一个零依赖、可插拔的 OpenAI 兼容 LLM 代理
javascript
leoZ23110 小时前
Claude 驱动的全栈开发:Spring Boot + Vue 的 BS 架构实践
vue.js·spring boot·架构
kyriewen11 小时前
我扒了 GPT-5.6 的全部编程跑分——有一项 OpenAI 没敢放出来
前端·gpt·ai编程
前端H11 小时前
微前端 v3 架构升级:从加载隔离到状态协同
前端·架构·状态模式
山河木马12 小时前
GPU自动处理专题3-NDC怎么映射成屏幕像素坐标(视口变换)
javascript·webgl·图形学
陆枫Larry12 小时前
小程序包体积优化:用 SVG 图片替换 iconfont,并保留 CSS 控色能力
前端