ElMessage自动引入,样式缺失和ts esline 报错问题解决

一. 环境

复制代码
"unplugin-auto-import": "^0.17.6",
"vue": "^3.3.8",
"vite": "^5.0.0", 
"typescript": "^5.2.2",

二. ElMessage样式缺失问题.

以下有两种解决方法

  1. 方法一: 配置了自动引用后,在使用ElMessage的时候去掉
ts 复制代码
import { ElMessage } from 'element-plus';

这个会产生esline报错,和ts报错, 后面有解决方法

  1. 方法二: 引入ElMessage的样式
ts 复制代码
import { ElMessage } from 'element-plus';
import 'element-plus/theme-chalk/src/index.scss'

在配置了自动引用, 这样去使用显然不是优雅的, 而且每次时候都需要进行引入

当然可以在main.ts中进行全局引用, 当然这还是不优雅的 (所以看下面 ↓)

三. 解决去掉import { ElMessage } 引起的esline,ts 报错问题

tsconfig.json中在include内添加**/*.d.ts

json 复制代码
	...
 "exclude": ["node_modules"],
 "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue", "**/*.d.ts"],
	...

node_modules中找到unplugin-auto-import阅读他的readme.md文件

看到了英文, 嘿嘿打开翻译

按照他说的进行配置vite.config.ts

ts 复制代码
// ...
AutoImport({
	resolvers: [ElementPlusResolver()],
	eslintrc: {
	enabled: true, // <-- this
	},
})
//	...

这会生成一个.eslintrc-auto-import.json文件, 这时我们需要更新我们的.eslintrc.cjs文件
.eslintrc.cjs

json 复制代码
	"extends": [
			...
		'./.eslintrc-auto-import.json', //加上这一行
	]

这里就完成了

如果按照这个过程没有配置成功, 可以找项目引入unplugin-auto-import的Readme文件, 按照提供的方法去搞

参考文章: <自动引入ElMessage,解决ts声明及ESLint报错问题>

感谢原文作者

相关推荐
咩咩啃树皮1 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
阳光是sunny1 小时前
LangGraph中的Reducer是什么
前端·人工智能·后端
触底反弹2 小时前
一文搞懂 Tailwind CSS 弹性布局:从原理到实战
前端·css·html
阳光是sunny2 小时前
从链到图:LangGraph 入门基础全解析
前端·人工智能·后端
To_OC2 小时前
LC 42 接雨水:暴力超时卡半天?前后缀数组一用就通了
javascript·算法·leetcode
小林ixn2 小时前
从 ??= 到 onKeyDown:一个 React 组件的“自我修养”
前端·javascript·react.js
REDcker3 小时前
显示分辨率标准对照详解
前端·网络·分辨率·显示·屏幕
এ慕ོ冬℘゜3 小时前
前端实战:jQuery 多条件联合搜索(标题模糊查询 + 日历时间段筛选)
前端·javascript·jquery
武子康3 小时前
Search Console Platform Properties 扩大 SEO 资产边界:从 Page Ranking 到 Topic Coverage(5 类误读边界 + 3 表数据层设计)
前端·人工智能·后端
随心点儿4 小时前
js postMessage 实现跨域发送消息-应用示例
javascript·ecmascript·postmessage