0-1开发自己的obsidian plugin DAY 9

3 weeks later 终于收到了obsidian human review的回复(会同步通知在绑定GitHub的邮箱)

从我欠考虑的desktop/mobile应用 到细节上的UI界面大小写 给出了详细反馈。


一是网页response的问题。

之前我用的是axios.get(), 但建议统一为Obsidian API提供的requestUrl。

二是大小写问题。

在UI界面上,需要统一成sentence case,即I Am A Student. -> I am a student. 仅首字母大写。

三是平台支持问题。

主要先是分了桌面端/移动端,如果一个应用只支持desktop的话,应该在manifest.json里修改"isDesktopOnly": true,

其次,在desktop设备里,似乎是可以只支持某一种的(如仅支持Mac),只需要1) 在readme中说明,2) 相关验证保证the code is only being executed on a Mac. 我目前的解决方案是加入平台检查:

TypeScript 复制代码
        if (os.platform() !== 'darwin') {
            new Notice('This feature is only supported on macOS.');
            return;
        }

四是路径,

const absPath = app.vault.adapter.basePath;

不建议global的方式,建议采用plugin instance。我参考了这个回复中关于FileSystemAdapter的方案How to get vault absolute path? - #2 by Jare - Developers: Plugin & API - Obsidian Forum

相关推荐
律宏阔15 小时前
微信小程序 + Taro 从 ESLint 迁移到 Oxlint 让项目代码检查速度提升近 12 倍
前端·typescript·eslint
瓦瓦gogo16 小时前
从一个 TypeScript 函数开始理解 MCP 协议
linux·ubuntu·typescript
ZhengEnCi1 天前
Hono 4 多库多模型服务的企业级 Monorepo 目录结构:npm workspaces 与 Turborepo 该怎么分层
typescript
浪遏2 天前
从命令到工作流:juejin-cli 如何让写作自动化更可靠
typescript
浪遏3 天前
07|网页上看着正常,导出的 PDF 为什么还会变样
typescript
浪遏3 天前
03|自动保存真正难的部分,是保存期间又发生了修改
typescript
浪遏3 天前
04|同一篇资料,怎样同时交给编辑器、搜索和 AI
typescript
浪遏3 天前
09|让 Mermaid 和 HTML 成为可编辑内容块
typescript
️公子3 天前
可插拔 13 款实时棋牌对战平台实践:房间容器、Plugin SDK 与幂等账本
websocket·typescript·游戏开发·monorepo·插件架构·棋牌平台·实时对战
FungLeo3 天前
成为全栈·Vue 管理后台篇·Vue3 + Vite + Naive UI:后台工程基座怎么搭
前端·vue.js·ui·typescript·vite·前端工程化·biome