如何扩充Node.js类?

时间:2017-10-01 14:32:56

标签: typescript

我需要为现有的Node.js类添加功能,特别是Server。是否可以使用以下代码段的内容?

import * as net from 'net'

type ShutdownableServer = net.Server & { shutdown(): Promise<void> }

function withShutdown(server: net.Server): ShutdownableServer {
  /* ... */
}

1 个答案:

答案 0 :(得分:0)

  

是否可以使用以下代码段中的内容?

是。

type ShutdownableServer = net.Server & { shutdown(): Promise<void> }

function withShutdown(server: net.Server): ShutdownableServer {
  const result = server as ShutdownableServer; 
  result.shutdown = /*your code*/;
  return result;
}

更多

我使用了一个断言。文档https://basarat.gitbooks.io/typescript/docs/types/type-assertion.html