- 博客(32)
- 收藏
- 关注
原创 隐藏的git文件夹
hooksGit 钩子是一些可执行的脚本,它们在特定的 Git 操作(如提交、合并、推送等)前后运行,可以用于自定义和控制 Git 操作的行为。常见的 Git 钩子脚本NOTE]Git 钩子脚本在 .git 文件夹中存储的是模板文件,需要将其重命名为去掉 .sample 后缀,并赋予可执行权限,才能生效。每个 Git 仓库的钩子脚本都是独立的,不会被版本控制。
2025-03-12 14:02:28
1099
原创 堆、栈、最小堆
删除根节点:移除根节点(即数组首元素)后,将末尾元素移至根位置,再通过 下沉(Sift Down) 调整,即与较小的子节点交换,直至满足堆性质。例如,索引为i的节点,其父节点索引为(i-1)/2,左子节点为2i+1,右子节点为2i+2。最大堆(Max-Heap) :每个节点的值大于或等于其子节点的值,根节点是堆中的最大值。最小堆(Min-Heap) :每个节点的值小于或等于其子节点的值,根节点是堆中的最小值。堆是一棵完全二叉树,即除最后一层外,其他层节点均填满,且最后一层节点从左到右连续分布。
2025-02-27 17:55:43
531
原创 如何启用GPU加速
GPU 仅负责将这些合成层的纹理(Texture)进行位移、缩放或透明度混合,无需重新计算布局或绘制像素。,通过跳过 Layout 和 Paint 阶段实现高效渲染。可显著提升动画性能,但需通过工具监控避免过度消耗资源。浏览器会自动为以下属性启用 GPU 加速(触发。时,浏览器会将其提升为。,与页面其他部分分离。GPU 加速的本质是。
2025-02-21 15:12:18
1340
原创 BFC块级格式化上下文
BFC(Block Formatting Context)中文译为"块级格式化上下文",简单来说,BFC就是给盒子加一个属性,让盒子变成一块独立渲染的区域,可以理解为一个箱子,箱子里面物品的摆放是不受外界的影响的,其中外边距(margin)也是BFC区域的一部分。
2025-02-19 09:55:12
926
原创 清除浮动的方法
也称为隔墙去,是W3C推荐的做法。额外标签法会在浮动元素末尾添加一个空的标签。styleclearboth</</要求这个新的空标签必须是块级元素。
2025-02-19 09:53:32
337
原创 grid网格布局
网格布局(Grid)是最强大的 CSS 布局方案。它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了。Grid 布局与有一定的相似性,都可以指定容器内部多个项目的位置。但是,它们也存在重大区别。Flex 布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是。Grid 布局则是将容器划分成"行"和"列",产生单元格,然后指定"项目所在"的单元格,可以看作是。Grid 布局远比 Flex 布局强大。
2025-02-14 14:08:46
1160
原创 flex弹性盒子
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为 Flex 布局。NOTE]注意,设为 Flex 布局以后,子元素的floatclear和属性将失效。
2025-02-13 15:24:40
642
原创 【JS表单控件】在子组件中选中了一项单选框后 父组件中的单选框选中状态消失
属性必填性作用域典型用途name必填单选框组实现互斥选择、数据提交id选填单个元素DOM 操作、标签关联若仅需基本功能,name必须填写且同组一致id可省略;若需要精细化控制或可访问性优化,则id应设置且唯一。
2025-02-11 17:16:52
304
原创 跨域问题及多种解决方法
总的来说,我们常说的“跨域”,其实就是获取不同源(协议+域名+端口)的资源时,浏览器自身做出的限制。在以前,开发者会用JSONP这种通过生成一个 script 标签,自动发起GET请求的方式来解决跨域,但是这种方式非常不安全,不推荐。到了现在,浏览器都已经完美支持 CORS 机制了,只需要在服务端添加对应的返回头 Access-Control-xxx-yyy 就可以了。当浏览器报“跨域”错误时,缺哪个字段,就在服务端配哪个字段即可。
2025-02-10 15:04:31
1249
原创 127.0.0.1和localhost有什么区别
127.0.0.1localhost场景2:hosts文件劫持访问 → 实际连接到192.168.1.100访问 → 仍指向本机开发调试必知防火墙策略差异跨容器通信性能影响验证工具DNS解析测试网络连接监控hosts文件检查总结:
2025-02-08 09:47:06
315
原创 setTimeout setInterval requestAnimationFrame 三者的区别
1.执行次数:setInterval执行多次,setTimeout、requestAnimationframe执行一次2.性能:setTimeout会出现丢帧、卡顿现象,setInterval会出现调用丢失情况,requestAnimationframe不会出现这些问题,页面未激活时不会执行动画,减少了大量cpu消耗3.兼容性问题:setInterval,setTimeout在IE浏览器中不支持参数传递,能够在大多数浏览器中正常使用。而requestAnimationframe不兼容IE10以下。
2025-02-07 11:39:14
695
原创 使用 Ant Design 和 Angular 实现侧边抽屉的展开与收起功能
在 HTML 文件中,我们使用了 Ant Design 的。并且使用了 Angular 的。用来控制按钮的位置,确保它固定在页面的右侧中央,在 TypeScript 文件中,我们定义了。指令来控制展开/收起按钮的显示。变量来控制抽屉的显示状态,以及。函数用来切换抽屉的显示状态。来为按钮和抽屉添加样式。来控制按钮文本的变化。让按钮文本垂直显示。
2025-02-06 16:13:21
321
原创 用console.log打印对象
在打印对象时并不总是立即显示实际的内容,特别是在对象是引用类型时,浏览器可能只打印出对象的引用,直到你展开对象时,它才会显示当前的状态。因此,对于对象调试,推荐使用来获取对象的快照,或者直接使用断点调试来查看对象的状态。
2025-01-23 14:36:56
486
原创 Chrome的开发者工具
Chrome 开发者工具(DevTools)是 Chrome 浏览器内置的一套工具,专为开发者设计,用于帮助他们对网站进行调试和分析。其功能涵盖了从查看和修改网页元素,到深入的性能分析和网络通信追踪。
2025-01-23 14:25:35
569
原创 package.json详解
文件是一个用于描述和管理项目的配置文件。它包含了项目的元数据信息,例如项目名称、版本号、作者、许可证等。同时,它还包含了项目的依赖项信息,包括项目所依赖的第三方库、框架以及工具等。通过文件,我们可以方便地管理项目的依赖关系,使得项目的构建、发布和维护更加简单和可靠。
2025-01-22 09:14:32
1825
原创 【Angular】终端npx运行ng命令可以 直接ng不行
• 使用 npx ng 可以正常工作 是因为 npx 会从本地 node_modules 中找到 Angular CLI,而你没有全局安装 Angular CLI。• 使用 ng 命令失败 是因为你没有全局安装 Angular CLI,或者 ng 的路径没有被添加到环境变量中。
2025-01-21 09:39:58
551
原创 如何在angular中使用ngx-markdown
兼容性问题:使用默认安装的版本,导致跟现有框架不适配,出现问题。可以适当降低版本。模块导入错误:如果导入路径不正确或者忘记在相应的模块中声明 ngx-markdown 组件,应用可能无法识别和使用该组件,从而导致 Markdown 内容无法正确渲染。语法高亮库配置错误:配置语法高亮库比较复杂。需要正确引入相应的脚本文件,并确保在代码块上添加了正确的类名以便库能够识别并进行语法高亮处理。如果配置不当,可能会导致语法高亮无法生效或者出现错误的高亮效果。
2024-10-30 17:13:13
1480
原创 如何在angular中使用marked
marked?marked是一个流行的 JavaScript Markdown 解析器和编译器。它的主要作用是将 Markdown 格式的文本转换为 HTML 格式,使得在网页开发和各种应用程序中可以方便地展示和处理 Markdown 内容。Markdown 是一种轻量级标记语言,以简洁易读易写的语法被广泛应用于文档撰写、博客创作、技术文档等领域。marked库通过解析 Markdown 文本中的各种语法元素,如标题、段落、列表、链接、代码块等,将其转换为对应的 HTML 标签和结构。
2024-10-24 11:24:00
1191
原创 [angular]onPush有什么作用
使用OnPush变更检测策略,可以有效地提升 Angular 应用的性能,尤其是在处理大型组件树或频繁更新的数据时。注意,在开发中要确保你的数据流是单向的,并适当地使用来管理变更检测,以确保组件在需要时能够正确更新。
2024-10-10 15:39:24
549
原创 在Angular中使用NG-ZORRO的选择框不能自定义输入选项
已有下拉选择框,根据后端接口返回的数据遍历生成option,但数据库中不能覆盖所有用户需要的选项,所以需要实现既能选择,又能手动输入的功能。
2024-09-30 09:27:32
628
原创 [Angular12]怎么发请求下载一个返回压缩包的文件(例如 ZIP 文件)
【代码】[前端]怎么发请求下载一个返回压缩包的文件(例如 ZIP 文件)
2024-09-24 10:00:29
385
原创 [Angular12+TS]项目使用命令npm i 安装依赖后 启动报错
2. 安装或更新 @types/lodash 类型定义文件,确保其版本与 lodash 版本匹配。1. 打开项目中的 package.json 文件,查找并记录 lodash 的版本号。注意将 x.x.x 替换为与 lodash 版本匹配的类型定义文件版本号。定位到报错的文件,将T extends object。运行以上命令后,报错。
2024-09-09 17:53:19
311
原创 ng : 无法加载文件 C:\Users\yunzhong\AppData\Roaming\npm\ng.ps1,因为在此系统上禁止运行脚本。
问题背景:在vscode终端使用命令报错尝试解决方法: 以身份打开PowerShell:查看当前的执行策略: Get-ExecutionPolicy* `Restricted`:不允许任何脚本运行。这是默认设置,也是最安全的设置。* `AllSigned`:只允许运行由受信任的发布者签名的脚本。* `RemoteSigned`:从Internet下载的脚本必须签名才能运行,但本地脚本可以不受限制地运行。* `Unrestricted`:允许所有脚本运行。这是风险最高的设置。为了。
2024-09-09 09:12:15
404
原创 搭建angular脚手架时报错
(2)运行npx -p npm@6 npm i --legacy-peer-deps。(1)在命令后面加上--legacy-peer-deps。成功解决:安装低版本的npm 重新运行。查了一下说是npm版本过高导致的。
2024-07-25 11:09:26
497
1
原创 使用Termius在服务器上部署前端项目
1.在项目终端输入命令 npm run build/yarn build对项目文件进行打包,打包完成后项目文件新增一个dist文件夹。5.在本地找到项目打包的dist文件夹,将dist下所有文件夹复制到服务器的/var/www/html/项目文件夹里面,前端部署完成。4.在/etc/nginx/conf.d/中加入我们项目的nginx配置文件(文件类型必须是.conf)3.点击SFTP,选择服务器,左边是本地文件,右边是服务器文件。
2024-06-27 15:39:17
687
2
原创 共用页面路由修改+订阅
通过共用一个页面,可以避免重复编写相似的代码。这样可以减少开发工作量,并且在维护时也更加方便,因为只需修改一个页面即可。共用一个页面可以确保这两个页面具有统一的风格和布局,从而提升用户体验。用户在不同页面间切换时,不会感受到突兀或不一致的界面变化。使用路由切换页面可以避免每次切换都重新加载整个页面的内容。这可以提高页面加载速度,因为只需加载页面中变化的部分,而不是整个页面。
2024-05-14 20:22:08
271
2
原创 [dva]解决页面路由变化但页面不刷新的问题
在dva中我们可以在 Model 中实现事件监听, model 中的 subscriptions 相当于一个监听器,可以监听路由变化,鼠标,键盘变化,服务器连接变化,状态变化等,这样在其中就可以根据不同的变化做出相应的处理,在这个 subsriptions 中的方法名是随意定的,每次变化都会一次去调用里面的所有方法,所以一般会加相应的判断。点击同一页面不同数据跳转到该数据的详情页面时,路由变化但页面停留在第一次点击的数据详情页面,除非每次点击后关闭该详情页面,再点击下一个数据。
2024-05-14 19:33:50
902
2
原创 表格中某项显示文字过多处理方法
先限制数据(record)的长度并将多余的部分用省略号替代,鼠标移到数据上方弹出气泡展示全部数据。鼠标移到课程简介上方。
2024-05-14 14:50:59
493
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅