全部文章
共 1299 篇文章
vue项目首次加载缓慢,利用splitChunks分包打包导致上线chunk-XX.js文件过多页面加载缓慢资源请求阻塞问题解决方案
前言 由于后台管理项目一直在迭代开发,不知不觉项目包过大(30MB左右),每次项目上线后加载最新资源文件(chunk vendors)用时过久。白屏时间比较长用户体验感特别差。 利用splitChunks 进行分包打包 利用splitChunks 分包将chunk vendors 包拆分成多个chunk xxxx.js文件。拆分后过多chunk xxxx.js文件也会有问题,下文有详细说明和解决方案。 下面进行splitChunks 分...
前端实现发布版本,浏览器自动刷新
使用nodejs脚本生成版本信息json文件 + 监听页面显示和隐藏会触发的 (页面显示和隐藏)事件(可以随意使用各种监听方式) 实现原理: 1、使用nodejs编写脚本,获取package.json版本信息,并保存为json文件,存放在构建打包的目录下(比如,public目录) 2、使用页面显示和隐藏会触发的 事件,监听页面的显示和隐藏操作,如果页面显示,则请求打包放在dist根目录下的版本信息json文件,对比当前打包版本的 与历史...
用最简洁的大白话把 Vue 原理讲清楚!
哈喽,大家好 我是 👨🏻💻。面试经常被问 Vue 原理? 那么怎么用比较简短的话语把 和面试官讲清楚呢 🤔? 大部分前端开发在 的过程中,应该都会遇到面试官问各种 的问题。 就拿 来说,底层原理涉及到的概念和知识点很多,包括 、 、 、 、 、 、 等。 面试官一般都没有 的时间来听我们一句一句的 ! 那么我们如何在有限的时间内, 的把 Vue 原理解释清楚呢?🤔 核心: !!! Vue 的 及到一些更深入的概念,主要包括以...
设计问能不能实现这种碎片化的效果
前言 某天设计发来一个 ,问我能不能实现这种类似的效果。 不知你们什么感想,反正我当时第一次看到这个网站的效果时,心里第一反应就是这做个锤子啊。 F12 调试 让我们打开调试,瞅瞅别人是如何实现。 可以看到在该层级下,页面有很多个 元素,而每一个元素都是定位覆盖其父元素的。 当我们添加 后,可以看到嘴角这里少了一块。 而继续展开其内部的元素就可以看到主要的实现原理了: 。 和 更详细的解释可以看 ,简单来说就是在一个 里面绘制一个多边形...
解决webstorm中className={}改为className=''
<img src="../../ resources/e7330ab25d208c71aa482d9f07bd0f53.png" alt="e7330ab25d208c71aa482d9f07bd0f53.png" width="863" height="440" class="jop noMdConv" e7330ab25d208c71aa482d9f07bd0f53.png
别想调试我的前端代码
这里我们不介绍 和 方案。 无限debugger 前端页面防止调试的方法主要是通过不断 debugger 来疯狂输出断点,因为 debugger 在控制台被打开的时候就会执行 由于程序被 debugger 阻止,所以无法进行断点调试,所以网页的请求也是看不到的. 基础方案 将 中的代码写在一行,可以禁止用户断点,即使添加 为 也无用 当然即使有些人想到用左下角的格式化代码,将其变成多行也是没用的 浏览器宽高 根据浏览器宽高、与打开F12...
MySQL常用命令大全
打开 Linux 或 MacOS 的 Terminal (终端)直接在 终端中输入 windows 快捷键 win + R,输入 cmd,直接在 cmd 上输入 1、mysql服务的启动和停止 启动失败可按快捷键 win+R,输入 services.msc,找到MySQL服务器的名称启动 2、登陆mysql 键入命令mysql u root p, 回车后提示你输入密码,然后回车即可进入到mysql中了 3、增加新用户 例:增加一个用户u...
Prisma 的全部命令和 schema 语法
init:创建 schema 文件,初始化项目结构。 generate:根据 schema 文件生成客户端代码。 db:包括数据库与 schema 的同步。 migrate:处理数据表结构的迁移。 studio:提供图形化界面进行 CRUD 操作。 validate:验证 schema 文件的语法。 format:格式化 schema 文件。 version:显示版本信息。 环境设置与初始化 首先,我们需要创建一个新的项目并设置 Pri...
10 个提高生产力的 Go 小技巧
1\. 计时技巧 如果你对跟踪函数的执行时间感兴趣,或者在排查问题时需要使用。 可以在 Go 中可以使用 关键字,只需一行代码即可实现一个非常简单、高效的技巧。 你只需要一个 TrackTime 函数: \ 1.5 两阶段 Defer Go 的 defer 的强大之处不仅在于任务完成后的清理工作;它也在于为任务做准备。 考虑以下情况场景: \ 这种模式的美妙之处?只需一行代码,你就可以实现如下任务: 打开数据库连接,稍后关闭它 设置模拟...