- 博客(36)
- 收藏
- 关注
原创 《宝塔 Nginx & SSL 端口管理实战指南:域名解析、端口冲突与后端代理解析》
在使用 宝塔(BT Panel) 部署项目时,很多开发者会遇到 SSL 申请失败、Nginx 端口冲突、后端 API 代理问题 等困扰。本指南深入解析 www 与非 www 域名解析的区别、Nginx 443 端口管理、后端服务如何正确代理 HTTPS 访问,并提供 最佳实践与优化方案,帮助你在 宝塔环境下 轻松解决常见部署难题。🚀
2025-03-03 18:39:40
594
原创 Vite 代理下的 POST 请求跨域问题排查与解决方案
在 `Vite` 开发环境中,我遇到了 **GET 请求可以成功,但 POST 请求返回 `403 Invalid CORS request`** 的问题。经过排查发现,**Vite 代理后的 `POST` 请求 `Origin` 变成了 `localhost:4000`,但后端 CORS 规则只允许 `127.0.0.1:5500`**,导致 `OPTIONS` 预检请求失败,从而拦截了 `POST` 请求。最终,我通过在 **Vite 代理中手动伪装 `Origin`**
2025-02-08 18:46:10
678
原创 如何优雅地控制动画执行顺序:解锁 requestAnimationFrame 的新姿势
在网页开发中,我们经常需要控制动画的执行顺序,并在动画执行完毕后执行一些后续操作。对于初学者来说,可能会尝试使用同步代码或简单的定时器来实现这一需求,但由于浏览器的渲染机制,这种方法往往无法得到流畅的结果。本博客将深入探讨如何利用 requestAnimationFrame 来流畅地控制动画,逐步展示不同的解决方案,并最终分享一个封装好的通用工具函数,轻松管理动画的多个阶段。
2024-10-16 15:56:19
611
原创 压缩字体包的经验教程
通过子集化字体文件,我成功地将 5M 的字体包压缩到了一个较小的体积,节省了存储成本,并且保证了小程序的加载速度和用户体验。如果你也遇到了类似的问题,可以考虑使用 Fontmin 进行字体子集化,这是一种简单有效的优化方案。
2024-10-14 11:45:52
1060
原创 深入解析 CSS calc():实现动态布局的终极利器
本文详细介绍了 CSS 中 calc() 的基本用法,包括如何在样式中动态计算属性值。通过举例说明了 calc() 在调整宽度、自适应内边距和外边距、元素对齐、网格布局、字体大小等方面的典型应用场景。接着,文章针对在 SCSS 中使用 calc() 的注意事项进行了探讨,包括避免运算符冲突、嵌套 calc() 使用的风险、混合单位运算的注意点以及如何结合 SCSS 变量和函数优化代码。通过这篇文章,读者将全面了解如何利用 calc() 来创建更灵活、响应式的布局。
2024-09-26 18:52:35
4640
原创 Dount 小程序转APP上架App Store
通过Dount工具将微信小程序转成APP并成功上架App Store,整个过程虽然遇到了一些问题,但通过及时调整和优化,我们顺利解决了这些问题。希望这篇文章能为其他开发者提供一些参考和帮助。备注:上架App Store涉及到的所有步骤和细节可能会因为苹果的政策变化而有所不同,请随时关注官方文档和指南。希望这篇完善和美化后的文章能够更好地帮助您记录和分享您的经验。如果有任何进一步的需求或修改,请随时告知。
2024-07-25 14:44:53
885
原创 浏览器是怎么执行JS脚本的?
浏览器的事件循环(Event Loop)是浏览器内部用来管理和执行任务的机制。它确保异步任务能够有序执行,并在任务之间保持一致性。事件循环的核心机制包括任务队列、微任务队列以及渲染和更新周期。下面我详细讲述一下事件循环的过程,并举出相关的源码片段来帮助理解。
2024-06-16 13:40:15
939
原创 如何使用Vuex
Vuex 是 Vue.js 的状态管理模式,专为管理 Vue.js 应用程序的状态而设计。在 Vuex 中,整个应用的状态被存储在一个对象中,这个对象称为 “store”。Vuex 的设计理念是通过集中式存储管理应用的所有组件的状态,使得状态的变化可预测且易于调试。下面是对 Vuex 的核心概念和实现原理的解释。
2024-06-14 15:02:13
321
原创 简单讲述Vue 2 响应式原理示例
我们详细讲解了 Vue 2 中响应式系统的基本原理和实现方法。这种响应式设计允许数据变化自动更新视图,极大地简化了前端开发过程。
2024-06-12 11:03:21
426
1
原创 一篇文章讲清楚Promise和async/await的关系
Promise 和 async/await 都是处理 JavaScript 异步操作的强大工具。Promise 提供了一个干净的方式来处理异步操作的成功和失败,而 async/await 使代码更具可读性和同步代码风格。通过学习和理解它们的使用,你可以编写更高效和优雅的异步代码。
2024-06-10 14:03:05
491
原创 Uniapp开发微信小程序封装stomp到websocket
STOMP是一种简单、基于文本的消息传递协议,通常用于与消息代理(Message Broker)进行通信。基于文本:命令和消息都是纯文本格式,易于调试和阅读。简单的协议:包含少量的命令,易于实现和使用。与消息代理交互:STOMP通常用于在客户端和消息代理之间进行通信,支持发布/订阅模式。连接到STOMP服务器使用connect方法可以连接到STOMP服务器。这个方法接受连接头信息、连接成功回调和连接错误回调。连接成功后,可以订阅消息、发送消息等。断开连接使用disconnect。
2024-06-09 14:57:35
1024
1
苹果内购凭证解析内含有前后端简单项目文件
2024-06-28
微信小程序image组件的@load事件在图片没有加载完导致序列帧动画闪烁,如何解决?
2024-06-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人