3.2 KiB
3.2 KiB
版本信息
‼️ 发布版本时填写,供脚本~/pubsh/release.sh使用
v1.3.4
重构
新的架构图
┌─────────────────────────────────────────────┐
│ Obsidian Framework Layer │
│ preview-view.ts (ItemView 容器) │
│ - 视图生命周期管理 │
│ - 事件监听注册 │
│ - 委托所有业务逻辑 │
└──────────────┬──────────────────────────────┘
│ 持有并委托
↓
┌─────────────────────────────────────────────┐
│ Business Logic Layer │
│ preview-manager.ts (中央调度器) ★ │
│ - 创建和管理所有子组件 │
│ - 处理平台切换(唯一入口) │
│ - 协调组件交互 │
│ - 管理渲染流程 │
└──────────────┬──────────────────────────────┘
│ 管理
┌───────┼───────┐
↓ ↓ ↓
┌──────────┐ ┌──────────┐ ┌──────────┐
│Platform │ │Wechat │ │Xiaohong- │
│Chooser │ │Preview │ │shu │
│(UI选择器)│ │(微信实现)│ │Preview │
└──────────┘ └──────────┘ │(小红书) │
└──────────┘
单向数据流
用户操作 → PlatformChooser.onChange()
↓
PreviewManager.switchPlatform()
↓
┌────┴────┐
↓ ↓
show/hide show/hide
Wechat Xiaohongshu
bug修复
症状1:Obsidian 一直处于"加载工作区中"状态 症状2:进入安全模式后关闭安全模式,插件能加载但提示:
"获取样式失败defaultldefault,请检查主题是否正确安装。"
v1.3.8
重新实现分页测量,清理多余日志。
- 重新实现分页测量:构建隐藏的“测量页面”,与真实页面同样的宽度、内边距(40px)和 class,逐个把克隆元素追加进去,利用 scrollHeight 决定是否换页,保证 margin 折叠后计算准确 (src/xiaohongshu/paginator.ts:57;waitForLayout 新增)。
- 当元素放不下当前页时,移除测量克隆并把已排内容写入分页,再以该元素开启新页;不可分割元素允许独占一页即便超高 (src/xiaohongshu/paginator.ts:101)。
- 清理多余日志,同时共用 PAGE_PADDING 常量让 renderPage 和测量逻辑保持一致 (src/xiaohongshu/paginator.ts:182)。
现在分页依据真实渲染高度,预览窗口内不会再丢失底部内容。建议在小红书预览里多翻几页、调整字号后重新分页验证结果。