无法打开任何 Vault,报错 Cannot read properties of undefined (reading 'origin')

重现步骤

  1. 启动 Obsidian。
  2. 选择任意一个已有的 Vault,点击 Open
  3. 加载页面会短暂出现,然后立即退出,返回欢迎页面。
  4. 新建一个全新的 Vault 后尝试打开,也会出现完全相同的问题。

错误信息

A JavaScript error occurred in the main process

Uncaught Exception:
TypeError: Cannot read properties of undefined (reading 'origin')
at Function.<anonymous> (/Users/evelynwu/Library/Application Support/obsidian/obsidian-1.12.7.asar/main.js:71:1101)

是否按照故障排查指南进行了排查?【Y】

无法进入任何一个 Vault(包括新建的 Vault),因此完全无法进入 Obsidian 的主界面,这也导致大部分需要在软件内完成的排查步骤都无法执行。


补充信息

  • 这个问题是某一天突然出现的,在此之前一直可以正常使用。
  • 问题会影响所有 Vault,包括新创建的 Vault。
  • 我在论坛看到过一个看起来比较相似的问题:
    Constant Javascript Errors v1.5 / net::ERR_CONTENT_DECODING_FAILED - #11 by kr0n - Help - Obsidian Forum
  • 我已经尝试过帖子中提到的方法,将 cache 目录删除(或重命名)后让 Obsidian 自动重新创建缓存目录,但问题仍然存在。
  • 由于无法进入任何 Vault,因此我无法禁用插件、切换主题,也无法进行任何需要进入软件后的排查操作。

关于重装的疑问

  • 目前我还没有尝试卸载并重新安装 Obsidian,因为担心会丢失已经安装的社区插件及其配置。
  • 我已经安装了很多社区插件,但现在已经记不清具体安装了哪些。如果最终需要重新安装 Obsidian,我想了解是否有办法保留或恢复这些插件以及它们的配置。
  • 如果在重装之前有需要提前备份的文件或目录,也希望能够得到一些建议。

看样子应该是插件引起的。其实按理来说这种情况下Obsidian会提示无法正常开启、让你通过安全模式进入仓库。

如果没法通过这种方式进入仓库的话,假设你是win用户,可以开启系统沙箱来安装Obsidian,从而排除是系统问题。

如果确认不是系统问题,那么就基本可以确定是插件、主题的问题了。需要对相关配置目录进行处理。仓库的插件、主题、设置基本都是放在仓库根目录下的 .obsidian 文件夹里:其中 .plugins是第三方插件的文件夹, .themes 是主题文件夹, .snippets是 css 代码文件夹,其余为 Obsidian设置项。应该是这三个子文件夹中的 某个内容 导致仓库无法打开,一般情况下将其删除即可。

需要注意,在删除相关配置项前,先备份好仓库。不管怎样,仓库中重要的内容永远是笔记,而不是插件设置。

我有 3 个 vault,确定应该是当中有一个 vault 有问题,我把那个有问题的 vault 的插件主题全部删掉了,appearance里面的配置也删掉了,然后确实是可以打开了。但是,现在的问题是,这个有问题的 vault 不能和别的 vault 同时打开,他们互斥了,假设我已经打开了这个有问题的 vault,这时候去新建还是打开 vault 都会进到打开的进度条页面一闪而过,然后又回到欢迎主界面了。是不是只能重装了…

理论上不应该。你可以重装试试。只要仓库不保存在Obsidian的安装路径 (之前论坛有人还真这么干过……),重装什么的几乎没有影响。