记一次 vscode 踩坑记录,如果有遇到的小伙伴,一定要看一下。
最近这两天在用 vscode 快乐的coding的时候,突然间发现 ts 文件和 js 文件都变傻了。具体表现就是
1、代码没有提示,
2、不能代码跟踪,
3、点右键的时候,菜单特别的少只有最基本的那几项。
一开始我以为是我开发环境有问题,也没有太在意,可是一连几天都这样,今天终于下决心解决一下。
经过仔细的观察,发现是 vscode 的 `TypeScript and JavaScript Language Features`插件有问题。就是说:TS服务启动不了导致的一系列问题。那么问题来了,为什么TS服务启动不了呢~~~
带着疑问继续找问题,最开始怀疑的就是自己写的代码有问题。然后各种找代码,优化代码。重新来一次,结果……
再来,把所有的文件都删了,一个个文件排查,经过漫长的过程发现是 `vue-router`和`tiny-emmiter`这两个第三方依赖导致的。可是其它的项目没问题啊,我感觉肯定不是这两个的问题。我应该是项目环境或者vscode环境的问题,好,带着疑问继续找问题
然后各种百度~你懂的,没有任何有用的信息。
偶然看到一个贴子能把 tsserver.js 启动信息打印出来。通过配置了 vscode 环境,再来看log日志,最终发现下面的日志:
Exception on executing command {"seq":2,"type":"request","command":"updateOpen","arguments":{"changedFiles":[],"closedFiles":[],"openFiles":…………`
终于看到一丝希望了,(一天已经过去一大半了)
带着log信息。继续查资料,终于在github上找到了类似的bug。发现还有好多人提这个问题,而且是最近这两天新提交的,这说明肯定是vscode环境的问题。继续~~
最终找到了一点点答案,是关于 Typescript 版本的问题~
我的版本是 4.5.2 。我试着升级到最新的: 4.5.3。再来,结果~~~好啦
可算是好了,看了一下桌子上的头发,瞬间觉得值了。
所以特此记录一下,防止小伙伴们踩坑。
遇到问题,不好急,慢慢排查,找到问题比解决问题还要难。一定要静下心来慢慢查找,这个解决的过程中也能收获很多意外的惊喜