js 如何引用 .d.ts 里的 interface
本帖最后由 jihousai 于 2022-11-4 01:00 编辑有一个 .d.ts 文件,比如 http2.d.ts, 文件定义了一些 interface, 如下
export interface Http2Stream extends stream.Duplex {
/**
* Set to `true` if the `Http2Stream` instance was aborted abnormally. When set,
* the `'aborted'` event will have been emitted.
* @Since v8.4.0
*/
readonly aborted: boolean;
/**
* This property shows the number of characters currently buffered to be written.
* See `net.Socket.bufferSize` for details.
* @since v11.2.0, v10.16.0
*/
readonly bufferSize: number;
/**
* Set to `true` if the `Http2Stream` instance has been closed.
* @since v9.4.0
*/
readonly closed: boolean;
ts小白,只知道.d.ts是个类型定义文件,我想在 .js 文件中引用 Http2Stream,如下
const
{ Http2Stream} = require('http2'),
可是该怎么初始化一个 Http2Stream 对象呢?
谢谢。 直接用ts,为什么用js?
ts不比js复杂多少,学习曲线相差无几。
.d.ts无法直接被js引用,如果你使用lsp-typescript应该会自动引用这个文件以开启类型提示。 js 里不能用interface吧,还是直接用ts吧 d.ts 是给 typescript 的命名空间,使用 ts 开发自动引 d.ts js使用require,引用的还是js,你打印一下require之后的对象看看有没有这个属性呢。
ts的interface可以帮助你了解属性 文止先生 发表于 2022-11-4 10:52
js使用require,引用的还是js,你打印一下require之后的对象看看有没有这个属性呢。
ts的interface可以帮 ...
打印 http2,确实是没有 Http2Stream 的属性。
我看nodejs文档,说不建议用户直接创建 Http2Stream 对象。
额,如果非要创建,岂不是要 copy 一份它的源码?。。
页:
[1]