Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio VSCode-引用JS中的模块类型_Visual Studio_Typescript_Visual Studio Code - Fatal编程技术网

Visual studio VSCode-引用JS中的模块类型

Visual studio VSCode-引用JS中的模块类型,visual-studio,typescript,visual-studio-code,Visual Studio,Typescript,Visual Studio Code,使用Visual Studio代码进行JS编程,我可以从typescript访问一些功能;由于编辑器将解析周围的所有.d.ts文件,因此它将帮助我处理变量类型。例如,它确实认识到以下几点: any.js 现在,我想访问node.d.ts声明文件中声明的类型(接口、类…等等);例如,它声明模块流,该模块声明可读接口 我在找这样的东西: const stream = require('stream') /** * @param {stream.Readable} stream */ funct

使用Visual Studio代码进行JS编程,我可以从typescript访问一些功能;由于编辑器将解析周围的所有
.d.ts
文件,因此它将帮助我处理变量类型。例如,它确实认识到以下几点:

any.js

现在,我想访问
node.d.ts
声明文件中声明的类型(接口、类…等等);例如,它声明模块
,该模块声明
可读
接口

我在找这样的东西:

const stream = require('stream')

/**
 * @param {stream.Readable} stream
 */
function goo(stream) { ... }
但这不起作用。我试过:

  • {internal.Readable}
  • {stream.Readable}
  • {Node.stream.Readable}
  • {Node.Readable}
  • {Node.internal.Readable}

从VS Code 1.18开始,在JSDoc类型中使用require时,这是一个限制。我已经打开了专门跟踪这一点

一些可能的解决办法:

使用
导入

import * as stream from 'stream'

/**
 * @param {stream.Readable} stream
 */
function goo(stream) { ... }
或显式导入可读的

const stream = require('stream')
const {Readable} = require('stream')

/**
 * @param {Readable} stream
 */
function goo(stream) { ... }
还跟踪允许您直接在jsdoc中指定模块导入

import * as stream from 'stream'

/**
 * @param {stream.Readable} stream
 */
function goo(stream) { ... }
const stream = require('stream')
const {Readable} = require('stream')

/**
 * @param {Readable} stream
 */
function goo(stream) { ... }