uni-app中typescript语言服务崩溃

uni-app中typescript语言服务崩溃

操作步骤:

预期结果:

实际结果:

右侧一直弹出 the typescript language service died unexpectedly 5 times in the last 5 minutes

bug描述:

右侧一直弹出 the typescript language service died unexpectedly 5 times in the last 5 minutes

日志:

Error: Connection is closed.
at throwIfClosedOrDisposed (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:680:19)
at Object.sendRequest (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:789:13)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\jsservice\out\utils\fileWatchPipe.js:1:796
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:706916
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at t.ExtHostFileSystemEventService.$onFileEvent (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:708110)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355417
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355631
at Immediate.<anonymous> (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:357168)
at Timeout._onTimeout (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:466005)
at listOnTimeout (node:internal/timers:559:17)
at processTimers (node:internal/timers:502:7)
2024-01-18 15:42:18.581 [WARNING:] QObject::setParent: Cannot set parent, new parent is in a different thread
2024-01-18 15:42:32.961 [WARNING:] QObject::startTimer: Timers cannot be started from another thread
2024-01-18 15:42:32.965 [WARNING:] [PluginHost] Error: Connection is closed.  
Error: Connection is closed.
at throwIfClosedOrDisposed (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:680:19)
at Object.sendRequest (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:789:13)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\jsservice\out\utils\fileWatchPipe.js:1:1636
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:706916
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at t.ExtHostFileSystemEventService.$onFileEvent (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:708110)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355417
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355631
at Immediate.<anonymous> (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:357168)
at Timeout._onTimeout (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:466005)
at listOnTimeout (node:internal/timers:559:17)
at processTimers (node:internal/timers:502:7)
2024-01-18 15:42:32.966 [WARNING:] [PluginHost] Error: Connection is closed.  
Error: Connection is closed.
at throwIfClosedOrDisposed (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:680:19)
at Object.sendRequest (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\node_modules\vscode-jsonrpc\lib\common\connection.js:789:13)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\hbuilderx-language-services\jsservice\out\utils\fileWatchPipe.js:1:796
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:706916
at l.fire (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:472910)
at t.ExtHostFileSystemEventService.$onFileEvent (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:708110)
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355417
at G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:355631
at Immediate.<anonymous> (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:357168)
at Timeout._onTimeout (G:\soft\HBuilder\HBuilderX.2.2.2.20190816\HBuilderX\plugins\plugin-manager\out.js:1:466005)
at listOnTimeout (node:internal/timers:559:17)
at processTimers (node:internal/timers:502:7)
2024-01-18 15:42:33.644 [WARNING:] QObject::killTimer: Timers cannot be stopped from another thread
2024-01-18 15:42:33.644 [WARNING:] QObject::startTimer: Timers cannot be started from another thread
2024-01-18 15:42:33.647 [WARNING:] [PluginHost] Error: Connection is closed.

更多关于uni-app中typescript语言服务崩溃的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

你好,方便远程帮你看下吗?方便的话加下我的QQ:1261017283

更多关于uni-app中typescript语言服务崩溃的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 Uni-App 中使用 TypeScript 时,如果遇到语言服务崩溃的问题,可能是由于多种原因引起的。以下是一些常见的解决方法,帮助你排查和修复问题:


1. 检查 TypeScript 版本

确保你使用的 TypeScript 版本与 Uni-App 和 HBuilderX 兼容。可以尝试更新或降级 TypeScript 版本。

npm install typescript@latest --save-dev

或者指定一个稳定版本:

npm install typescript@4.9.5 --save-dev

2. 检查 HBuilderX 版本

确保你使用的是最新版本的 HBuilderX,因为旧版本可能存在 TypeScript 支持问题。前往 HBuilderX 官网 下载最新版本。


3. 清理项目缓存

有时缓存文件可能导致 TypeScript 语言服务崩溃。可以尝试以下操作:

  • 删除 node_modules 文件夹,然后重新安装依赖:
    rm -rf node_modules
    npm install
    
  • 删除 dist 文件夹(如果有)。
  • 在 HBuilderX 中,点击菜单栏的 项目 -> 清理项目缓存

4. 检查 tsconfig.json 配置

确保 tsconfig.json 文件配置正确。以下是一个基本的配置示例:

{
  "compilerOptions": {
    "target": "es6",
    "module": "esnext",
    "strict": true,
    "jsx": "preserve",
    "moduleResolution": "node",
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "lib": ["dom", "es2015"]
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}

5. 检查插件和依赖

某些第三方插件或依赖可能与 TypeScript 不兼容。可以尝试以下操作:

  • 检查 package.json 中的依赖,确保没有冲突的版本。
  • 如果使用了某些特定的插件,尝试暂时移除它们,看看问题是否解决。

6. 重启 TypeScript 语言服务

在 HBuilderX 中,可以尝试重启 TypeScript 语言服务:

  1. 打开 HBuilderX。
  2. 点击菜单栏的 工具 -> 插件安装
  3. 找到 TypeScript 插件,点击 重启

7. 检查代码中的语法错误

有时 TypeScript 语言服务崩溃是由于代码中的语法错误引起的。可以尝试以下操作:

  • 检查代码中是否有未定义的变量、类型错误等问题。
  • 使用 tsc 命令手动编译 TypeScript 文件,查看是否有错误:
    npx tsc
回到顶部