Vue 3 + Vite 配置 SVG 图标:完美填坑指南(依赖报错与 symbolId 终极解析) 在 Vue 3 + Vite 项目中,封装一个通用的 <svg-icon> 组件是提升开发体验的常见做法。然而,在实际配置过程中,由于构建工具的升级和路径解析的细节差异,很容易踩到各种奇奇怪怪的坑。 本文将详细记录从插件依赖报错,到彻底搞懂 symbolId 映射关系的完整排错过程,并给出最终的最佳 2026-11-05 前端拾光 0 野猪凌梦
Vite + Vue3 + Ant Design Vue 4.x:组件与 API 自动导入最佳实践 在开发 Vue 3 项目时,频繁地手动 import { ref, reactive } from 'vue' 以及引入 UI 组件库的按需加载代码,往往会让人感到繁琐。为了提升开发效率,社区提供了两个神器:unplugin-auto-import 和 unplugin-vue-components 2026-11-04 前端拾光 0 野猪凌梦
Vue3 + Element Plus 踩坑记录:弹框表单回显残留与 Object.assign 陷阱详解 在开发 Vue 3 中后台管理系统的菜单/用户管理模块时,“表单弹框”是个高频交互场景。今天在处理菜单编辑与新增时,遇到了一个经典的奇葩 Bug:先点击“编辑”按钮打开弹框回显数据后,关闭弹框再点击“新增”,弹框里居然而然还残留着刚才编辑的内容! 经过排查和重构,发现这是由 Vue3 响应式对象引用 2026-09-10 前端拾光 4 野猪凌梦
Pinia 中调用 Getter 报错 "is not a function" 的原因及最佳实践 在 Vue 3 项目中从 Vuex 迁移到 Pinia 或者初次使用 Pinia 时,很多开发者(包括我自己)都会习惯性地写一堆 getters,然后在组件或拦截器中调用。但这往往会导致一个经典的报错。 今天在配置 Axios 请求拦截器时,就踩到了这个小坑,特此记录,以备忘却。 🐛 问题复现 在 2026-09-04 前端拾光 9 野猪凌梦
Vue3 表单 resetFields 报错还清空不掉的连环坑 最近在写 Vue3 + Element Plus 的后台系统,遇到了一个贼恶心的问题。平时开发,我们肯定都是复用同一个弹窗来做“新增”和“编辑”的嘛。结果发现一个诡异的 Bug:只要先点了“编辑”,关掉弹窗再去点“新增”,表单里的数据不仅没清空,控制台还疯狂报 Cannot read propert 2026-08-30 前端拾光 8 野猪凌梦
别让数据再“打架”了!Vue3 配合 Pinia 搞定 Tabs 标签页持久化 写后台管理系统,Tabs 多标签页加上数据持久化绝对是绕不开的需求。 以前我写这块的时候,总会踩进一个极其恶心人的坑:单一数据源冲突 。 怎么个坑法呢?就是一边在 Vue 组件里搞个 ref 本地存一份 tabList,一边为了防刷新,又在 Pinia 里也存一份持久化的 tabList。 结果就是 2026-08-16 前端拾光 11 野猪凌梦
告别烦人的相对路径:Vite + VSCode 路径别名配置全指南 在日常的前端开发中 ,我们经常遇到这样的场景:当项目目录嵌套较深时,组件之间的相互引用就会变成一场灾难 。满屏的 ./../../components/Button 不仅让代码看起来杂乱无章,一旦后续调整了文件层级,还需要手动去修改无数个相对路径 。 为了解决这个问题,我们通常会配置 路径别名(Pa 2026-05-24 前端拾光 22 野猪凌梦
Vue 3 + Element Plus 开发踩坑:为什么 scoped 样式失效?:deep() 到底怎么用? 在使用 Vue 3 + Element Plus 开发时,你是否也遇到过这样的困惑: “我已经写了 scoped 样式,但 Element Plus 组件的内部元素就是不生效!” 最后不得不加上 :deep() 才解决? 今天我们就来彻底搞懂这个问题的本质。 🔍 问题复现:官方头像上传组件样式“失 2026-05-09 前端拾光 34 野猪凌梦