位置: IT常识 - 正文

vite + vue + ts 自动按需导入 Element Plus组件,并如何解决按需引入后ElMessage与ElLoading 的问题(找不到名称“ElMessage”问题。)

编辑:rootadmin
vite + vue + ts 自动按需导入 Element Plus组件,并如何解决按需引入后ElMessage与ElLoading 的问题(找不到名称“ElMessage”问题。)

推荐整理分享vite + vue + ts 自动按需导入 Element Plus组件,并如何解决按需引入后ElMessage与ElLoading 的问题(找不到名称“ElMessage”问题。),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

按需引入后ElMessage与ElLoading 的问题,两步优雅解决找不到名称“ElMessage”问题。不需要导入npm包,不需要下载任何东西,只要五行代码

目录

1、添加Element Plus组件库

1.2、下载

1.2、自动导入(官方推荐)

2、按需引入后ElMessage与ElLoading 的问题

2.1、解决问题

2.2、下面是分析原因,有兴趣可以看一下


1、添加Element Plus组件库1.1、下载

 npm

npm install element-plus --save

  yarn 

 yarn add element-plus 1.2、下载element-iconnpm install @element-plus/icons-vue

 element-icon也有自动导入的,但我感觉更麻烦,所有还是手动导入吧

手动导入方式:

import { Grid, RefreshRight } from "@element-plus/icons-vue";1.3、自动导入(官方推荐)

首先你需要安装unplugin-vue-components 和 unplugin-auto-import这两款插件

如果你是从vite+vue3+ts 手把手教你创建一个vue3项目  过来的,已经下过了,就不用再下了,只要添加有element注释的那行就行

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

 vite.config.ts文件

import { defineConfig } from 'vite'import vue from '@vitejs/plugin-vue'// 自动导入vue中hook reactive ref等import AutoImport from "unplugin-auto-import/vite"//自动导入ui-组件 比如说ant-design-vue element-plus等import Components from 'unplugin-vue-components/vite';//elementimport { ElementPlusResolver } from 'unplugin-vue-components/resolvers'// https://vitejs.dev/config/export default defineConfig({ plugins: [ vue(), //element按需导入 AutoImport({ //安装两行后你会发现在组件中不用再导入ref,reactive等 imports: ['vue', 'vue-router'], dts: "src/auto-import.d.ts", //element resolvers: [ElementPlusResolver()], }), Components({ //element resolvers: [ElementPlusResolver()], //默认存放位置 //dts: "src/components.d.ts", }), ],})2、按需引入后ElMessage与ElLoading 的问题2.1、解决问题

1.创建一个 Element-puls.d.ts 的文件(如果觉得名字不好,可以改,但要以.d.ts结束就行)

export {}declare global { const ElMessage:typeof import('element-plus')['ElMessage'] const ElLoading:typeof import('element-plus')['ElLoading'] }

 2.然后在 tsconfig.json 文件添加一行代码

{ ......."include": ["src/**/*.ts","src/**/*.d.ts","src/**/*.tsx","src/**/*.vue", //添加这行"Element-puls.d.ts"],}

vite + vue + ts 自动按需导入 Element Plus组件,并如何解决按需引入后ElMessage与ElLoading 的问题(找不到名称“ElMessage”问题。)

这样就完成了,看效果

2.2、下面是分析原因,有兴趣可以看一下

原因:它们与普通的标签组件不同,它们两都是可以运行在script上的API,而这个文件也是引入的API放到全局,然后可以在script使用的,在这文件里的是自动按需导入的,

可以看下源码的导出,node_modules >element-plus>global.d.ts

// ****注释的忽略,是为是能看到全部内容

可以看到这是分两个类型的,

一个是GlobalComponents(全局组件),

一个是 ComponentCustomProperties(组件自定义属性)

 

然而自动导入会在你的components.d.ts 文件 只导入 GlobalComponents(全局组件) ,

但不会导入 ComponentCustomProperties(组件自定义属性)

*****而我也是突然觉得,为啥不也导入组件自定义属性

那为什么不与一起呢?

       这是因为vite.config.ts里的配置,每次解析imports内的内容,放到dts里,会自动刷新src/auto-import.d.ts内的代码。

 

 知道原因了,那解决也不难了,

本文链接地址:https://www.jiuchutong.com/zhishi/288984.html 转载请保留说明!

上一篇:【2023-Pytorch-检测教程】手把手教你使用YOLOV5做电线绝缘子缺陷检测

下一篇:uniapp 前端获取微信小程序 URL Link (HTTPS调用)(uniapp获取window对象)

  • 支付宝挪车服务在哪里(支付宝挪车服务怎么关闭)

    支付宝挪车服务在哪里(支付宝挪车服务怎么关闭)

  • 抖音怎么用一个手机号注册两个号(抖音怎么用一个身份证认证多个号)

    抖音怎么用一个手机号注册两个号(抖音怎么用一个身份证认证多个号)

  • 手机出现timeout怎么弄(手机出现fastboot怎么办)

    手机出现timeout怎么弄(手机出现fastboot怎么办)

  • opporeno2语音唤醒打不开(opporeno2z语音唤醒)

    opporeno2语音唤醒打不开(opporeno2z语音唤醒)

  • 微信视频显示网络不佳(微信视频显示网络中断)

    微信视频显示网络不佳(微信视频显示网络中断)

  • iphone新品发布时间(苹果发布新品的时间)

    iphone新品发布时间(苹果发布新品的时间)

  • 模拟量输出的标准信号有哪些(模拟量输出的作用)

    模拟量输出的标准信号有哪些(模拟量输出的作用)

  • 微信月亮表情的含义(微信月亮小表情)

    微信月亮表情的含义(微信月亮小表情)

  • 笔记本电脑电池坏了有必要换吗(笔记本电脑电池没电了,插上电源却不充电是什么原因)

    笔记本电脑电池坏了有必要换吗(笔记本电脑电池没电了,插上电源却不充电是什么原因)

  • 华为p30nfc怎么复制门禁卡(华为p30nfc怎么复制公交卡)

    华为p30nfc怎么复制门禁卡(华为p30nfc怎么复制公交卡)

  • 路由器拨号和光猫拨号的区别(路由器拨号和光猫拨号优缺点)

    路由器拨号和光猫拨号的区别(路由器拨号和光猫拨号优缺点)

  • wlanmac地址是什么意思(wlan mac地址是固定的吗)

    wlanmac地址是什么意思(wlan mac地址是固定的吗)

  • 手机里面的软件缓存可以进行清理吗(手机里面的软件删除了怎么恢复)

    手机里面的软件缓存可以进行清理吗(手机里面的软件删除了怎么恢复)

  • 怎么隐藏vivo钱包(vivo钱包怎么隐藏起来)

    怎么隐藏vivo钱包(vivo钱包怎么隐藏起来)

  • 手机上怎么做文档(手机上怎么做文件夹存图片)

    手机上怎么做文档(手机上怎么做文件夹存图片)

  • 中国联通hd什么意思(中国联通hd有什么用)

    中国联通hd什么意思(中国联通hd有什么用)

  • 三星s10支持双微信吗(三星s10支持双卡吗)

    三星s10支持双微信吗(三星s10支持双卡吗)

  • 刚开的店怎么上定位(刚开的店怎么上架商品)

    刚开的店怎么上定位(刚开的店怎么上架商品)

  • 小度在家699和299区别(小度在家系列哪个好)

    小度在家699和299区别(小度在家系列哪个好)

  • 大疆御2使用技巧(大疆御2操作视频)

    大疆御2使用技巧(大疆御2操作视频)

  • 陌陌发不了动态怎么办(陌陌发不了动态,多长时间可以解开)

    陌陌发不了动态怎么办(陌陌发不了动态,多长时间可以解开)

  • excel2010怎么打印预览(excel2010怎么打印文件)

    excel2010怎么打印预览(excel2010怎么打印文件)

  • win11系统怎么设置鼠标可滚动非活动窗口?(win11系统怎么设置密码锁屏)

    win11系统怎么设置鼠标可滚动非活动窗口?(win11系统怎么设置密码锁屏)

  • win10电脑记事本怎么保存(win10电脑记事本在哪)

    win10电脑记事本怎么保存(win10电脑记事本在哪)

  • 车辆购置税计入固定资产入账价值吗
  • 交易性金融资产是什么意思
  • 加计抵减不符合怎么办
  • 小规模入账的收入分录
  • 非营利组织缴纳社保
  • 视同销售但未收到钱怎么做账
  • 金蝶软件制造费用结转步骤
  • 购进货物的发票是外来凭证吗
  • 弥补以前年度亏损会计分录
  • 纳税筹划成本支出怎么算
  • 购货方要求退货合理吗
  • 基建贷款贴息账户有哪些
  • 生产企业购进的用于生产的机器设备
  • 业务招待费扣除比例
  • 提前预支费用怎么写
  • 税务局扣税余额不足
  • 商贸企业销售商品结转成本是手工算吗
  • 工资薪酬所得税税率
  • 盘盈固定资产冲销啥科目
  • 城建税当月缴纳要计提吗
  • 跨年度冲减收入
  • 分公司向总公司转钱可以吗
  • 先收到发票后到货分录
  • 公司钱被取走怎么处理
  • cpu天梯图2022最新排行榜
  • 上月暂估入账
  • 完工转出产成品成本计算
  • u盘做的启动盘在哪里
  • mac语音备忘录文件怎样转换成mp3
  • 苹果如何保护
  • php数组可以使用哪些键名
  • eclipse 4.19
  • 什么是跨区域涉税业务
  • php socket函数
  • php 字符串函数
  • 哪些资产损失可以转回
  • 农产品收购发票使用范围
  • linux多网卡聚合
  • 不良资产核销的条件 追偿180天
  • 工会经费如何在网上购物吗
  • php读取excel内容
  • php远程下载源码
  • 数据安全数据目录
  • 年末应交税费怎么算
  • 学电脑哪个网站比较好
  • mongodb数据删除
  • Building a HTTP Proxy
  • 低值易耗品管理办法
  • 其他收益算主营业务收入吗
  • 出版社出版带有编码吗
  • 企业每年需要做什么
  • 如何填制费用报销单
  • 现金日记账余额自动生成公式
  • 物流企业发生的费用包括
  • 在建工程的
  • 应交税费应交增值税减免税款
  • 制造企业费用会计
  • 原材料采购未入库会计分录
  • 利息支出和利息收入区别
  • 弱电系统可以入户门吗
  • 工程施工费怎么开票
  • 职工福利费的核算内容
  • Fedora Core 5.0 安装教程,菜鸟图文教程(linux text)
  • FastDFS4和Ubuntu12安装及部署步骤
  • win8 任务栏
  • 怎么提升win7性能
  • 环境篇-幸福家庭是孩子心灵健康的关键.mp3
  • 复制文件到c盘需要管理员权限
  • 批处理清空文本内容
  • Python实现以时间换空间的缓存替换算法
  • jquery入口
  • 工信部新车申报目彿
  • 湖北税务查询电话
  • 什么是核心征管申报
  • 补农行卡怎么补几天能补完
  • 重庆税务局发票作废怎么处理
  • 贸易公司服装
  • 国税能级管理(国税局等级制度)
  • 收购晾晒烟叶,支付价款20万元,支付价外补贴2万元
  • 专家咨询费包括哪些内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设