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

相关推荐
hboot13 小时前
别再被 TS 类型冲突折磨了!一文搞懂类型合并规则
前端·typescript
王林不想说话13 小时前
提升工作效率的Utils
前端·javascript·typescript
cute_ming14 小时前
从 Node.js + TypeScript 无缝切换到 Python 的最佳实践
python·typescript·node.js
T112415 小时前
深入解析 OpenCode:下一代 AI 编程助手的架构艺术
typescript·aigc
小二·19 小时前
Vite 构建完全指南:极致性能优化、安全加固与自动化部署(Vue 3 + TypeScript)
安全·性能优化·typescript
一只爱吃糖的小羊19 小时前
从 AnyScript 到 TypeScript:如何利用 Type Guards 与 Type Predicates 实现精准的类型锁死
前端·javascript·typescript
先生沉默先19 小时前
TypeScript 学习_类型与语法(2)
学习·typescript
奔跑的web.21 小时前
TypeScript类型系统核心速通:从基础到常用复合类型包装类
开发语言·前端·javascript·typescript·vue
Kagol21 小时前
🎉历时1年,TinyEditor v4.0 正式发布!
前端·typescript·开源
踢球的打工仔21 小时前
typescript-var和let作用域
前端·javascript·typescript