在另一个包中访问 HTMLMediaElement 接口的属性

问题描述 投票:0回答:1

包A中,有一个名为HTMLMediaElement的接口,它具有一些属性,即

HAVE_METADATA: number;
HAVE_CURRENT_DATA: number;
HAVE_NOTHING: number;
NETWORK_NO_SOURCE: number;
HAVE_ENOUGH_DATA: number;
NETWORK_EMPTY: number;
NETWORK_LOADING: number;
NETWORK_IDLE: number;
HAVE_FUTURE_DATA: number;

HTMLMediaElement接口由Video类实现,它返回这些属性的值为:

get HAVE_CURRENT_DATA(): number {
        return 4;
}

HTMLMediaElement 接口和 Video 类都被导出。

https://html.spec.whatwg.org/multipage/media.html#dom-media-have_current_data:~:text=4.8.11.7-,Ready%20states,-media.readyState

HTMLMediaElement 接口参考: https://github.com/TypeStrong/tscs/blob/master/lib/node_modules/TypeScript/bin/lib.dom.d.ts#L8840

我想要的是,

我有另一个 包 B(我正在导入 HTMLMediaElement 接口和视频类),并且想要访问 HTMLMediaElement 属性,例如,

HTMLMediaElement.HAVE_CURRENT_DATA
全球包 B.

我不想通过 Video 类对象访问这些属性(HAVE_CURRENT_DATA、HAVE_NOTHING 等)。

html typescript dom media w3c
1个回答
0
投票

将 Interface HTMLMediaElement 转换为抽象类,并为属性和方法添加 abstract 关键字(因此它会像接口一样工作)。 将 static 关键字添加到 readonly 属性:

static readonly HAVE_CURRENT_DATA : number = 0;

注意:不确定,但它对我有用,您不需要将子类定义从“实现”更改为“扩展”类。

© www.soinside.com 2019 - 2024. All rights reserved.