作为当前生产环境使用最广泛的 JavaScript 框架之一,Vue 支持自底向上增量开发,可应用于静态 HTML 增强、单页应用(SPA)、服务端渲染(SSR)、静态站点生成(SSG)等场景,可通过 Node 包管理器(npm)在 Windows 及 Linux 子系统(WSL)部署。
在前端开发中,树形结构是非常常见的数据格式,无论是菜单展示、权限管理还是分类列表,都离不开树形数据的操作。其中,根据节点 ID 查找对应子节点(包括深层子节点)是高频需求,今天就分享一个通用、健壮的 findChildren 方法,解决日常开发中树形节点查找的痛点。 日常开发中,我们经常会遇到这样的…
在日常全栈开发中,使用 Element UI(或 Element Plus)的 el-table 组件展示树形结构数据是很常见的需求,比如部门层级、分类目录、权限树等场景。但近期在开发一个包含千级以上节点的树形表格时,我遇到了明显的卡顿问题 - 页面初始化缓慢、展开折叠节点时延迟明显,甚至出现浏览器…
在日常开发 uniapp 项目(基于 Vue2)时,经常会遇到这样的场景:组件中定义了多个具名插槽,需要根据父组件是否传入对应插槽内容,来控制组件内部相关结构的渲染。比如自定义弹窗组件,可能需要根据是否传入 header 插槽来显示头部标题,根据是否传入 footer 插槽来显示底部按钮,这就需要我…
在日常全站开发工作中,前端表格数据排序是极为常见的交互需求,尤其是针对业务数据列表的自定义列排序,看似基础的功能,实则藏着不少边界问题和体验优化点。最近在处理业务项目里的名片数据列表模块时,刚好针对原有的表格排序函数做了完整的问题排查与优化,这里把完整的开发过程、原始代码问题以及优化后的实现逻辑整理…
在基于 Electron v13.6.9 开发桌面应用的过程中,不少开发者会遇到打包后抛出 Cannot find module '@electron/remote' 的错误,本文结合实际开发场景,梳理该问题的成因与完整解决路径,希望能为同版本开发者提供参考。 问题背景 Electron 从 v12…
最近在做 PC 桌面应用开发,技术栈选用了 Electron 搭配 Vue,项目搭建初期为了方便进程间交互,提前开启了 nodeIntegration:true 配置,原本想着能直接在 Vue 组件里调用 Electron 原生的 Dialog 模块,实现文件选择、弹窗提示等功能,实际开发中却发现没…
在开发环境下,我们访问项目一般都是 127.0.0.1:8080,很多资源的查找都是从根目录下开始的,但是如果是打包成静态文件,放到域名的二级、三级目录,有些资源就找不到了。 比如说 element-ui 框架在打包后,字体图标就加载不出来,通过查看网络请求发现,他是从 CSS 所在的目录往下找,而…
近期开发的一个项目测试人员发现,在 IOS 上的文本框总是点击无法获取焦点,多次点击或者长按才能获取焦点,导致这个问题所在的原因是因为项目中引入了 FastClick 这个是解决移动端延迟 300 毫秒的优化。 当使用 FastClick 时,输入框在 IOS 上点击输入调取手机自带输入键盘不灵敏,…
Vue 项目开启了 keep-alive 缓存,但是总是会遇到有些地方缓存清理不干净,索性在用户退出的时候重新加载整个网页,使用的就是 window.location.reload() 函数,在本地调试的时候完全没有问题,但是在手机上就无法重载网页。 我发现一个问题,当一个网页的地址最后面是一个 #…
使用 Vue 2.x 开发项目,路由当然也是用的官方的路由,一直也是挺好用的,但是如果是相同的页面,也就是重复点击就会报错: vue.esm.js?efeb:628 [Vue warn]: Error in v-on handler (Promise/async): "NavigationDupli…