自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

FungLeo's Blog

键鼠轻游戏人间 风流谈笑傲江湖

  • 博客(537)
  • 资源 (11)
  • 问答 (1)
  • 收藏
  • 关注

原创 成为全栈·Taro 小程序篇·小程序请求与会话层:统一信封、并发 401 与账号切换

访问令牌过期与账号切换是两类不同问题。本文结合 Taro.request 的实际封装,展示统一信封与 ApiError、公开请求不带 Bearer、共享刷新 Promise、晚到 401 的令牌比较以及一次性重放规则。文章说明会话代次如何阻止旧账号响应回写,也明确临时网络失败不应直接退出、写入不盲目重试、本地存储与上传路径的能力边界,帮助读者构建能解释成功和失败的请求层。

2026-10-21 10:37:47 62

原创 成为全栈·Taro 小程序篇·四 Tab 与页面栈:小程序生命周期如何影响页面状态

四个原生 Tab 和二级页面的返回行为,为什么会影响缓存与数据一致性?本文以真实小程序导航结构为线索,区分 switchTab、navigateTo、挂载加载和显示补读,解释分页列表的时间条件、缓存版本、请求序号与会话代次各保护什么。文章进一步讨论下拉刷新、触底、阅读计时和编辑器离开保护的不同业务意图,避免把页面显示统一写成重复请求,也不把局部保留列表夸大为完整离线能力。

2026-10-21 10:33:31 67

原创 成为全栈·Taro 小程序篇·把 APP 原型落到小程序:图标、Design Token 与深色模式

确认过的 APP 原型如何迁移到小程序,而不是再次自由发挥?本文追踪图标从原型路径到 PNG 的来源,展示浅色和深色语义颜色变量,拆解用户主题偏好与实际显示结果的区别。文章进一步说明 Screen、Icon、导航栏和原生 Tab 的联动方式,指出静态 Tab 图标的当前边界,并把间距、空状态和错误状态纳入原型还原的检查范围,让设计要求可以持续约束开发。

2026-10-21 10:27:18 94

原创 成为全栈·Taro 小程序篇·Taro 工程落地:锁定依赖、AppID 与可复现构建

小程序基础工程能打开之后,怎样让下一位协作者复现同样的结果?本文以 Taro 4.3.0 工程为例,说明 packageManager 与锁文件的分工,区分 AppID、公开 API 地址和后端 AppSecret,给出类型检查、逻辑测试及 weapp 构建顺序。文章结合 14 页面、4 Tab 的实际构建记录,解释源码与生成产物的边界,并指出文件大小、工具导入和正式发布各自能证明什么。

2026-10-21 10:24:00 195

原创 成为全栈·Taro 小程序篇·第五批复盘:从复用接口到交付一个小程序

本文复盘了使用Taro开发小程序的全过程,强调接口复用的核心价值在于减少规则重定义而非编码量。通过十四页面实践,揭示了平台差异、契约核对与真实证据的重要性。三次返工源于对“字段语义”的想当然,凸显回归契约的必要性。交付需以多层证据支撑,而非单一成功提示。主动不引入复杂功能,是明智的设计取舍。最终提出:下一轮开发应先列共享规则、平台动作与证据矩阵,真正可复用的,是经过验证的判断力。

2026-10-20 10:47:11 217

原创 成为全栈·Taro 小程序篇·小程序与 App 的能力取舍:相同需求为什么需要不同实现

参考 APP 功能,为什么小程序仍然采用外链复制、内存缓存和原生文本编辑?本文从共同用户目标出发,对照 Flutter WebView、fresh/maxAge/disk 缓存策略与小程序当前实现,解释共享接口和判断为何不等于复制所有平台复杂度。文章进一步讨论 Markdown 输入保护、不同登录入口与同一 userId、存储边界和失败反馈,并给出升级条件与对应验收方法,让跨端差异成为可维护的决策。

2026-10-20 10:44:01 405

原创 成为全栈·Taro 小程序篇·多端代码如何组织:哪些属于业务,哪些属于微信

多端框架并不会自动形成清晰架构。本文结合小程序的 core、hooks、components、features 与 pages 分层,说明如何按变化原因组织代码,如何区分纯逻辑和真实平台依赖,以及页面为什么只承担组合职责。通过导航函数、评论分组和测试替身的具体边界,文章讨论何时值得引入平台适配接口,何时抽象只会增加教学成本,并给出用修改范围检验分层效果的方法。

2026-10-20 10:39:43 380

原创 成为全栈·Taro 小程序篇·开发工具跑通之后:演示验收与正式发布还有哪些差距

开发工具关闭域名校验跑通,可以构成什么交付结论?本文基于本项目明确的教学演示目标,区分工具配置、真实微信身份和正式发行准备,说明调试选项不会生成秘密、手机号或网页容器能力。文章分别审视 API、图片、业务域名、存储说明和真机证据,给出未来资格、隐私、设备验证与发布节点,并强调平台要求应届时重新核对,避免把演示成功误写成随时可以上架。

2026-10-20 10:35:38 216

原创 成为全栈·Taro 小程序篇·原生分享与文章入口:小程序的平台能力边界

小程序分享提供的是接收者入口,不是原页面的会话复制。本文从 useShareAppMessage 和 openType=share 的实际实现出发,区分网站 URL、原生页面路径和外链复制,解释公开文章标题与 ID 的选择,以及本人预览为什么退回首页分享。文章进一步强调服务端状态权限、接收侧错误处理和真机转发证据的独立边界,避免把开发工具中的按钮误写成已经完成所有平台分发能力。

2026-10-19 11:05:45 252

原创 成为全栈·Taro 小程序篇·微信快捷登录与首次凭据设置:接入已有账号体系

微信快捷登录怎样进入已经完成的网站和 APP 账号体系?本文沿着 Taro.login、后端 code 回调、AuthResult、来源返回和首次凭据设置展开,明确微信建号与已有账号合并的区别,展示 canSetCredentials 的界面资格检查及 setup-account 会话替换。结合真实线上 500 与 Workers 修复经历,文章区分本地测试、真实微信登录和跨端人工矩阵,并说明存储、秘密管理与错误兜底的实际边界。

2026-10-19 11:03:05 143

原创 成为全栈·Taro 小程序篇·小程序限制清单:哪些前端习惯要改掉

熟悉 React 并不意味着可以把网页习惯直接带进小程序。本文从真实内容产品出发,拆解 DOM、Markdown、外链、页面生命周期、微信登录和图片上传六类差异,展示当前项目采用的替代实现及其代价。文章特别说明开发工具关闭域名校验的验证范围、上传与普通请求的不同处理,以及本地存储的安全边界,帮助读者把平台限制转换为可执行的产品选择和验收动作。

2026-10-19 10:55:42 319

原创 成为全栈·Taro 小程序篇·Taro 一套代码多端:这次究竟复用了什么

网站与 Flutter APP 已经完成,再做微信小程序,究竟能复用多少?本文结合成为全栈项目,把后端契约、产品流程、原型图标和客户端代码分层审视,说明为什么选择 Taro,以及为什么选了多端框架仍不能宣称其他平台已交付。文章进一步展示 API 基址、环境隔离、工程分层和三类验收证据,帮助已有产品增加新客户端时,先明确复用边界,再安排真正需要开发的工作。

2026-10-19 10:52:05 79

原创 成为全栈·Node 后端篇·Node 测试通过,Workers 登录为什么仍然 500

微信密钥已上传、Node 测试已通过,线上登录却返回 500。本文还原一次真实排查:从普通接口与配置核验,到受控脱敏日志,再用 workerd 复现 redirect:error 参数被拒绝的问题。通过 manual 与拒绝 3xx 保留禁止重定向的安全要求,并补充请求次数和不建号回归。结合修复后的 401 探测与真实 wx.login 成功,说明 mock、运行时验证和平台实测各自能证明什么。

2026-10-18 10:19:25 162

原创 成为全栈·Node 后端篇·微信登录与首次账号设置:把平台身份接到自己的用户体系

微信会员尚未设置密码,怎样仍然完整使用自己的文章、收藏和评论?本文沿真实后端实现拆开平台身份、本地凭据和业务 userId,介绍微信身份唯一映射、随机内部密码哈希与设置资格,并通过条件 UPDATE 和受影响行数解释一次性设置、旧刷新令牌撤销及并发失败方的保护。结合用户名冲突、网络响应丢失和自动化测试,明确数据库原子性、令牌签发与真实跨端验证分别能保证什么。

2026-10-18 10:17:14 383

原创 成为全栈·Node 后端篇·冻结契约如何兼容增补:为微信登录补齐最小能力

网站和 APP 已经使用冻结接口,小程序却需要新增微信登录,怎样避免把一个入口做成复杂账号平台?本文从真实需求裁剪出发,比较绑定合并与独立建号,说明 callback 扩展点、可选资格字段和首次账号设置端点的最小增补。结合历史账号默认值、迁移顺序、冲突响应与兼容检查,解释契约从 1.11.0 到 1.12.0 后哪些旧用法得以保留,以及“新增可选字段”为什么仍然需要消费者验证。

2026-10-18 10:14:27 386

原创 成为全栈·Flutter App 篇·第四批复盘:复用了什么,移动端又新增了什么

M4 的跨端复用主要发生在 OpenAPI 契约和业务语义,Next.js 与 Flutter 并不共享前端组件代码。本文复盘移动导航、原生上传、缓存与会话等新增复杂度,列出 Android 本机和生产只读证据,并明确 iOS 真机、签名与正式发布尚未完成。

2026-10-17 14:12:39 301

原创 成为全栈·Flutter App 篇·Flutter 构建与发布准备:Android、iOS 和签名边界

Flutter 能构建 APK 不等于 App 已具备上架条件,仓库包含 iOS 工程也不等于 iOS 验收通过。本文结合项目实际状态说明 debug/release 配置、API 与站点地址、签名密钥和商店检查,并明确 Android 模拟器已验收、iOS 真机与生产发布仍待完成。

2026-10-17 14:10:29 661

原创 成为全栈·Flutter App 篇·测试分层:单元、Widget、集成与线上只读验证

Flutter APP 的质量门禁覆盖纯逻辑、Widget 状态、模拟器端到端和线上公开只读,各层证据不能互相替代。本文结合项目实际命令、Android 隔离后端和竞态测试,说明如何防止生产写入,并明确 iOS 真机、商店签名和远程 CI 尚未验收的边界。

2026-10-17 14:08:19 304

原创 成为全栈·Flutter App 篇·主题与可访问性:深浅色、大字号和触控体验

Flutter 主题切换不应清空页面状态,可访问性也不能只检查默认浅色截图。本文结合项目令牌、三种主题模式和设备验收,讨论语义色、长内容、大字号、触控目标和读屏验证,并划清模拟器布局检查与真实辅助技术验收的范围。

2026-10-17 14:06:13 196

原创 成为全栈·Flutter App 篇·写后缓存失效与图片缓存治理

写操作会影响多个读取视图,Flutter APP 需要按资源关系精准失效缓存,并用代次阻止旧请求覆盖新状态。本文进一步讨论图片身份和容量策略、清理入口保护用户数据,以及缓存实测数字的测量范围,避免把数据读取样本误写成首帧或多机型性能承诺。

2026-10-16 11:12:02 177

原创 成为全栈·Flutter App 篇·Flutter 缓存:fresh、stale、expired 与账号边界

Flutter 缓存要区分 fresh、stale 和 expired,并按公开内容、会员数据和用户稿件设置不同持久化边界。本文结合 DataCache、磁盘 blob 与 Repository 说明请求合并、迟到响应保护、撤下内容清理和有限离线复用,澄清当前不支持离线下载和写入同步。

2026-10-16 11:10:04 363

原创 成为全栈·Flutter App 篇·本机稿件恢复:账号隔离、冲突判断与恢复决策

本机稿件恢复保护的是无法重新下载的用户正文,不是普通缓存。本文结合 Flutter 编辑器说明恢复键如何绑定环境、账号和稿件,服务端版本变化时如何避免静默覆盖,以及保存成功和缓存清理时的处理边界,并明确当前没有离线写入队列或自动同步。

2026-10-16 11:06:01 479

原创 成为全栈·Flutter App 篇·图片上传:原生文件、校验、进度与失败恢复

移动端图片上传从原生 XFile 开始,经历大小和类型校验、multipart 传输、进度显示,再把返回 URL 关联到投稿。本文结合 Flutter 实现和本地隔离测试,讨论失败保留、重试避免重复创建,以及私有和签名图片的缓存安全边界。

2026-10-16 11:03:56 212

原创 成为全栈·Flutter App 篇·Markdown 编辑器:编辑、预览与离开保护

移动 Markdown 编辑器的首要目标是保护用户内容。本文结合 Flutter 投稿页说明编辑/预览如何共享单一状态、元信息如何校验、保存草稿与提交审核如何区分、系统返回如何触发未保存保护,以及组件拆分为何不应分散表单所有权。

2026-10-15 14:20:27 267

原创 成为全栈·Flutter App 篇·投稿状态机:草稿、待审核与已发布

会员投稿由草稿、待审核和已发布等服务端状态约束。本文结合 Flutter 编辑流程梳理合法动作、最小更新载荷、创建后复用稿件 ID、私有预览缓存边界和集成测试重点,并明确当前没有作者自行撤回待审稿件的能力。

2026-10-15 11:47:45 208

原创 成为全栈·Flutter App 篇·会员中心:资料、密码、通知与私有数据缓存

Flutter 会员中心管理资料、密码、通知、收藏和阅读历史。本文以数据所有权为主线,说明页面入口不等于授权、通知乐观已读需要失败回退,以及私有展示数据如何按 API 环境、账号和会话代次隔离,避免串号或误清公开缓存。

2026-10-15 11:24:10 210

原创 成为全栈·Flutter App 篇·叠楼评论:跨页重组与直接回复上下文

叠楼评论需要把跨页到达的回复归回原楼,同时展示直接回复对象并限制深层缩进。本文结合 Flutter 评论实现讨论父项暂缺、循环关系保护、分页计数边界和服务端权限,说明如何在小屏幕上保留讨论语义并防止异常数据拖垮渲染。

2026-10-15 11:21:59 265

原创 成为全栈·Flutter App 篇·点赞、收藏与阅读历史:乐观更新和失败回退

点赞、收藏和阅读历史虽都属于文章互动,事实来源和账号边界却不同。本文讨论乐观更新失败回退、服务端计数校准、收藏分页索引完整性和会话切换隔离,避免把不同接口压成一个布尔状态或把不完整查询误报为准确结果。

2026-10-14 15:05:08 235

原创 成为全栈·Flutter App 篇·内置 WebView:网页历史、App 返回与外链安全

内置 WebView 同时包含网页 URL 历史和 Flutter 路由历史,而当前 App 选择按返回直接回到来源文章。本文结合实现说明内外链策略、协议校验、认证 token 隔离和加载失败恢复,并明确 Android 本机验证不等于 iOS 已验收。

2026-10-14 11:58:21 346

原创 成为全栈·Flutter App 篇·服务端目录与文章辅助阅读:锚点、上下篇、浏览量和阅读历史

文章目录不是根据标题猜 slug 的装饰列表,而是服务端返回的 anchor 协议。本文结合 Flutter Markdown 实现说明重复标题、代码围栏、异步 TOC 和无法匹配项如何处理,并区分核心正文、上下篇辅助内容、聚合浏览量与会员阅读历史。

2026-10-14 10:28:59 362

原创 成为全栈·Flutter App 篇·Flutter Markdown 阅读器:支持范围与渲染边界

Flutter Markdown 阅读器需要针对窄屏重新设计代码块、表格、图片、外链与明暗主题。本文结合实际组件说明支持边界、代码 token 缓存和私有内容隔离,并指出正文标题目录必须以服务端 TOC 锚点为事实源,不能靠客户端自行 slug 化。

2026-10-14 10:27:10 333

原创 成为全栈·Flutter App 篇·列表分页与下拉刷新:去重、失败保留和返回位置

文章列表需要处理查询身份、页间去重、刷新失败、数据版本变化和返回滚动位置。本文结合项目 ArticleFeed 与缓存快照,说明刷新时如何保留画面、为什么新版本要清除旧分页,以及客户端去重无法替代服务端快照的一手限制。

2026-10-13 12:56:58 536

原创 成为全栈·Flutter App 篇·分类、标签与搜索:移动端内容发现

分类、标签和搜索表面上都是内容列表,实际分别对应树形归属、主题集合和自由关键词。本文结合 Flutter 页面讨论搜索状态机、请求竞态、查询缓存键、空结果与网络错误的差异,以及哪些移动端状态应进入路由或本机历史。

2026-10-13 12:55:21 476

原创 成为全栈·Flutter App 篇·用真实 API 构建首页:焦点、最新与热门内容

Flutter 首页由焦点故事、最新文章和热门内容构成,但不同模块不应被一个 Future 绑成全有全无。本文结合真实 Repository 与缓存策略,讨论局部失败、空态和降级,并说明为什么原型中的演示数字不能冒充线上数据。

2026-10-12 15:09:29 476

原创 成为全栈·Flutter App 篇·Refresh Token 旋转与并发 401:安全存储与会话代次

移动端认证不能止于“登录成功”。Refresh Token 轮换要求并发 401 共享一次刷新、串行保存新凭据,并防止退出或切换账号后的迟到响应污染新会话。本文结合 Flutter ApiClient、Session 与测试说明 token 存储、安全边界和会话代次设计。

2026-10-12 15:01:03 473

原创 成为全栈·Flutter App 篇·移动端错误与限流:429、重试和写请求边界

本文解释移动端为什么不能把所有失败都变成“重试”:429 应读取 Retry-After 并采用有界退避,读取请求与非幂等写入的重试风险不同,断网时还应保留已有内容和编辑输入。结合 Flutter ApiClient 与测试边界,梳理可恢复错误的设计方法。

2026-10-11 10:09:13 530

原创 成为全栈·Flutter App 篇·Dio + Repository:统一响应信封与模型适配

本文以 Flutter 项目为例拆解 Dio、API Client、Repository 和 UI 的职责:网络层统一处理信封、认证、错误与限流,Repository 适配真实响应形状并输出稳定模型,页面只消费业务数据。代码生成、单测、隔离后端联调各自证明不同范围。

2026-10-11 10:05:15 294

原创 成为全栈·Flutter App 篇·Riverpod 状态边界:会话、服务端数据和表单草稿

Riverpod 是状态与依赖管理工具,不会替应用自动划分状态边界。本文结合 Flutter 工程区分会话、服务端数据、页面表单和本机稿件恢复副本,讨论各自的所有者、生命周期、账号隔离和测试方式,避免一次全局重置误清公开数据或留下私有状态。

2026-10-10 11:31:01 421

原创 成为全栈·Flutter App 篇·go_router 与四 Tab App Shell:保留导航状态、深链和登录回跳

四 Tab Flutter 应用需要管理多条独立返回栈,还要支持文章深链接、私有页面登录守卫和登录后回跳。本文结合项目 go_router 结构说明 App Shell 的职责、路由参数边界和平台深链验收范围,并强调客户端路由守卫不能替代后端权限判断。

2026-10-10 11:27:03 450

原创 成为全栈·Flutter App 篇·把高保真原型落成 Design Token 与 Flutter 组件

从高保真原型到 Flutter 页面,关键不是逐页抄颜色和间距,而是提取可复用的设计令牌、明暗主题语义和稳定组件边界。本文结合项目实际目录说明哪些组件应共享、哪些应留在页面内部,并讨论多状态、多尺寸截图验收的价值与限制。

2026-10-09 10:49:09 212

空当接龙-经典纸牌游戏游戏 for Mac AppleSilicon

我喜欢玩儿空当接龙的纸牌游戏,但是在 Mac 上,一直没有找到比较顺手的,并且没有广告的纸牌游戏。因此,自己手写了一个,界面精美,操作简便,完整还原了空当接龙的游戏精髓,并且,没有广告! 项目开源在 https://github.com/fengcms/freecell-swift 如果觉得不满意的,也可以自己下载下来修改。 目前仅支持 M 系列的苹果芯片的电脑。 由于没有注册苹果开发者账号,所以打开时会提醒不安全,去 系统设置 隐私与安全 选择 仍要打开 即可。游戏为纯本地运行,不要求任何权限。

2026-10-09

黑苹果USB无线网卡驱动,适用于mac10.15.x的版本,祝大家好用!

之前分享过10.12的无线网卡驱动,大家用了很好用,今天分享一个10.15的最新的驱动。希望能够帮助到大家。

2020-08-04

黑苹果mac无线网卡USB驱动,适用于mac sierra 10.12版本

黑苹果mac无线网卡USB驱动,适用于mac sierra 10.12版本

2017-02-26

win10系统iis伪静态配置安装文件64位版

在微软的网站上搜啊,找了好几个不能用的,最终,找到正确的了.此版本仅用于win10系统自带的IIS,其他系统我没测试过啊.为了便于自己以后下载.也共享出来给大家.此为64位版本.现在没人用32位系统了吧.

2015-12-17

黑苹果 Clover 引导编辑器 Mac 版本

黑苹果 Clover 引导编辑器 Mac 版本,用于调整Clover相关配置的工具。适用于 MacOS 10.15.4 版本,之前的老版本也可以用,但具体支持到哪个老版本我就不知道了。

2020-05-03

MAC上连接windows服务器的管理软件

MAC上连接windows服务器的管理软件

2017-02-26

Sip 软件免费版,MacOS 下好用的屏幕取色软件

Sip 软件是苹果系统下一款非常好用的屏幕取色软件,我提供的是4.5.2 的版本。这个版本是完全免费的版本,没有任何功能限制。现在 Sip 官方版本升级了,升级后变成了共享软件,虽然功能更强大了,但是也要钱了。这个版本功能足够我们日常使用,而且免费,没有试用期限限制,我放上来也是为了自己下载方便,特地分享给大家。现在网上真不好找这个版本的。

2020-05-03

文本替换专家2.5(无需注册版|非破解)

现在网上提供下载的“文本替换专家”都是5.0以上版本,这些都需要注册后才能使用。而我提供的是文本替换专家较老的版本,也就是2.5版本。此版本短小精悍,而且不用注册,可以免费使用。这个软件非常实用,推荐大家下载

2015-11-24

让黑苹果系统,支持安卓手机分享USB网络 HoRNDIS-9.2

安装后,可以用安卓手机用USB数据线连接黑苹果电脑后,分享网络给黑苹果系统使用。解决黑苹果无线网卡没有搞好之前的上网问题。

2020-09-01

用于 MAC上卸载 Creative Cloud 的工具

Adobe官方出品,专门用于 MAC上卸载 Creative Cloud 的工具,解压后是一个Creative Cloud Uninstaller.dmg 镜像,挂载后打开,运行里面的程序,稍等2分钟就卸载掉啦!

2017-02-27

FengFocus jQuery焦点图插件

1、html 结构异常简单,除了少数优秀的焦点图插件,大多数都是HTML异常复杂而功能单一的。 2、表现形式完全css化,有很多焦点图插件将表现形式写在了js中,优点是只要一个文件,而不用管css。缺点就是,修改样式异常困难,为我不喜。 3、切换效果简单,只采用了 jQuery 自带的 slideDown 和 fadeIn 这两个效果。当然,一般情况下 fadeIn 其实就够用了。如果需要更加复杂的切换效果,可以使用 jQuery Easing 插件来简单拓展 4、单一页面重复使用,严格的将所有动作控制在目标元素之内,不会与其他代码产生冲突。单一页面可以多次使用。

2015-09-04

Sublime Text 3/64 精心调配版 by FungLeo

安装插件如下:Emmet\less\sass\scss\jquery\colorpicker\side bar\sublime tmpl等前端常用插件。 风格暗色系。同事都说我调的好使。 ps: 1、 基于64位调配,32位系统无法使用。 2、 已经注册。

2015-08-26

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除