类型:Bug
在TS服务器运行几秒钟后,Intellisense会失效。这似乎与completionInfo
请求TS服务器有关。
如果我们重启TS服务器并立即尝试获取Intellisense建议,它可以正常工作:
但是在几秒钟(约5秒)后,它就无法正常工作了:
重现步骤:
- 克隆 https://github.com/metriport/metriport
- 检出分支
944-tmp-no-fhir-converter
- 打开
packages/api/src/app.ts
npm run install-deps && npm run build
- 在第15行以下输入
ver
并等待Intellisense生效 - 如果在TS服务器启动后立即完成,它应该可以正常工作(显示带有括号内的图标的提示)
- 如果在TS服务器启动后约5秒完成,它应该会失败(显示带有
abc
图标的提示)
查看TS服务器日志,我们得到以下内容:
Err 751 [18:43:42.056] Exception on executing command {
"seq": 34,
"type": "request",
"command": "completionInfo",
"arguments": {
"file": "/Users/rafael/code/metriport/packages/api/src/app.ts",
"line": 18,
"offset": 2,
"includeExternalModuleExports": true,
"includeInsertTextCompletions": true,
"triggerKind": 1
}
}:
Cannot read properties of undefined (reading 'lastIndexOf')
TypeError: Cannot read properties of undefined (reading 'lastIndexOf')
at Object.startsWith (/Users/rafael/code/metriport/node_modules/typescript/lib/tsserver.js:2290:20)
at getNodeModuleRootSpecifier (/Users/rafael/code/metriport/node_modules/typescript/lib/tsserver.js:132350:20)
...
完整的TS服务器日志: tsserver.log
这个问题在MacOS 13.4.1
上无法复现,但在Windows 10上也无法复现(即使在重新启动TS服务器几秒钟后也可以正常工作)。
附加环境信息:
- npm:
9.5.1
- node:
v18.14.2
- VSCode:
1.81.0
(也尝试在1.79
和 "Insiders" 上) - TS版本 4.9.5
VS Code版本:Code 1.81.0(通用)(6445d93c81ebe42c4cbd7a60712e0b17d9463e97,2023-08-02T12:40:02.782Z)
操作系统版本:Darwin arm64 22.5.0
模式:
系统信息
| 项目 | 值 |
| ------ | ------ |
| CPUs | Apple M1 Max (10 x 24) |
| GPU状态 | 2d_canvas:启用canvas_oop_rasterization:禁用_offdirect_rendering_display_compositor:禁用_off_okgpu_compositing:启用metal:禁用_offmultiple_raster_threads:启用_onopengl:启用_onrasterization:启用raw_draw:禁用_off_okvideo_decode:启用video_encode:启用vulkan:禁用_offwebgl:启用webgl2:启用webgpu:启用 |
| 平均负载 | 24, 19, 15 |
| 内存(系统) | 32.00GB(0.08GB可用) |
| 进程参数 | --disable-extensions --crash-reporter-id c22e1216-d117-446f-9db4-d73fbdb3e601 |
| 屏幕阅读器 | 无 |
| VM | 0% |扩展功能已禁用A/B实验
5条答案
按热度按时间4smxwvx51#
我看到了与Intellisense无法正常工作的其他问题,但似乎那些情况要么相当不同,要么难以识别相似之处:
$x_{1e0f1}^{x}$
$x_{1e1f1}^{x}$
erhoui1w2#
在启用了Dev Tools的TS服务器重启后,得到了
The JS/TS language service immediately crashed 5 times. The service will not be restarted.
:cidc1ykv3#
@leite08,这可能与我的问题类似 -> #56142
pnwntuvh4#
@sagarpanchal 我看到你在解决你的问题时使用了版本
4.9.5
- 这也是我们正在使用的版本,所以可能不相关。感谢让我知道并链接问题!kb5ga3dv5#
我发现我的代码中存在性能较差的类型,使用这个工具microsoft/typescript-analyze-trace可以找到它们。也许这能有所帮助?