当我使用Typescript创建一个新的Node项目时,VsCode自动导入建议根本不起作用 .
Steps to reproduce:
创建工作区目录 .
运行 npm init
指定 main.ts
作为入口点文件 .
导入打字稿cli npm i typescript
创建tsconfig.json .\node_modules\.bin\tsc --init
创建包含 console.log('Running');
的main.ts
透明使用 .\node_modules\.bin\tsc -w
通过单击VsCode中的 Debug
并使用默认的Nodejs启动配置运行 .
导入库,例如Rxjs导入打字稿cli npm i rxjs
Result:
在main.ts尝试使用任何Rxjs类型 Observable
, BehaviourSubject
时,全局运算符 from
of
sequenceEqual
等导致无任何导入帮助 .
我已经阅读了VsCode Typescript文档,没有提示有什么问题 . https://code.visualstudio.com/docs/languages/typescript
我已经尝试在tsconfig.json中明确设置 include
和 exclude
目录,这也没有任何效果 .
我是否需要在tsconfig或其他东西中手动设置一些模块分辨率选项 .
我不知道,我不知道为什么这不起作用 .
更新:
我设法通过指定使VsCode自动导入工作
"typeRoots": [ "node_modules" ]
...在tsconfig.json中
结果是一个小问题,即tsc现在报告错误
error TS2688: Cannot find type definition file for '.bin'.
看来tsc现在试图读取node_modules.bin的内容,这是没有用的 . 我试过设定
"exclude": [ "./node_modules/.bin"]
在tsconfig中,但这没有任何效果 .
1 回答
尝试将
main.js
作为您的入口点main.ts
Steps that I followed :
创建工作区目录 .
运行npm init,指定
index.js
作为入口点文件 .安装打字稿cli:
npm i typescript
创建tsconfig.json:
.\node_modules\.bin\tsc --init
创建包含
console.log('Running');
的index.ts透明使用
.\node_modules\.bin\tsc -w
通过单击VSCode中的Debug并使用默认的Nodejs启动配置来运行 .
安装库,例如Rxjs:
npm i rxjs
现在在index.ts文件中:
import { observable, BehaviorSubject } from "rxjs"
;我能够获得那些IntelliSense(导入帮助)