node api 文档和vscode 跳到定义处的函数定义不一样?

nick
  • 91

node版本是v10.4.1
文档中是这么写的

http.createServer([options][, requestListener])

之前据说[]是可选参数的意思,那么

  1. requestListener是个函数,这个函数的参数由options给出?
  2. 这里的options,requestListener都是可选参数?那requestListener这个函数的参数由什么确定呢?

新手不是很懂,麻烦详细解释一下
vscode中是这么写的

export function createServer(requestListener?: (request: IncomingMessage, response: ServerResponse) => void): Server;
这怎么和api文档中的不一样,是一个意思吗。。。

回复
阅读 1.1k
1 个回答
✓ 已被采纳
  1. requestListener是个函数,这个函数的参数跟options无关。
  2. 这里的optionsrequestListener都是可选参数。requestListener这个函数的参数由文档给定,接受两个参数,第一个是request: IncomingMessage,第二个是response: ServerResponse
  3. 严格来说vscode中的和api文档中的确实不一样,漏了options。以api文档为准。

题主追问,那就补一下是怎么看出来的吧

http.createServer

The requestListener is a function which is automatically added to the 'request' event.

最后一句话,requestListener是一个附加到'request'事件的监听器函数。

然后翻到Event: 'request'

'request'事件的监听器函数接受的参数就是这两个了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏