LSP JavaScript/TypeScript以及HTML源文件编辑报错

我这设置好了LSP、HTML以及JavaScript/TypeScript的插件还有对应的LSP服务器,然后开始写代码的时候就报这个错了


然后lsp-log也能找到lsp服务器的路径,就是不知道为啥会报这个错 这是lsp的日志

因为那个文件还没有创建,你保存就一下就好了。

每次find-file都出这个错误。。害

Try (setq lsp-enable-links nil)

不行,还是一样的报错,不管是在工程下面find-file还是不在工程下面find-file还是同样的报错

弄个自动保存就好了

试下 revert-buffer 呢?

不行,只能创建一个空文件再打开才不报错

从你的截图左下角的icon来看,你的html和js文件并没有创建,find-file只是创建了buffer,解决办法就是在buffer下执行一下保存就好了

这个错误出现在 以下代码的 311 行

应该是因为某个timer出现了错误

我实在是找不出file-missing是哪里引发的了

用stable version.

这个是lsp-client-flow-activate-p这个方法导致的,它会试图读取文件内容来验证当前文件是否支持 flow ,而刚创建的文件没保存根本读不到,我用的 doom-emacs ,加了个判断:

(defadvice! +lsp-clients-flow-activate-p (file-name _mode)
  :override #'lsp-clients-flow-activate-p
  (and (derived-mode-p 'js-mode 'web-mode 'js2-mode 'flow-js2-mode 'rjsx-mode)
       (or (lsp-clients-flow-project-p file-name)
           (and (f-file-p file-name)
                (lsp-clients-flow-tag-file-present-p file-name)))))