gpt4 book ai didi

javascript - typeof 的 TypeScript 动态模块加载问题

转载 作者:行者123 更新时间:2023-12-03 04:21:13 25 4
gpt4 key购买 nike

我正在动态加载我创建的模块,如下所示:

myModule.ts

export class SomeClass {
...
}
export type SomeType = {...}

在另一个文件中,我这样做:

import * as MyModuleType from "./myModule"
if(...) {
let loadedModule: typeof MyModuleType = require("./myModule");
...
}

MyModuleType 的类型同时具有 SomeClass 和 SomeType(如预期)。而loadedModule的类型只有SomeClass(不完整类型!)。我该如何解决这个问题?

typescript 版本:2.3.2

编辑器:atom,使用atom-typescript v10.1.15

谢谢。

最佳答案

TS 中的类型描述值。所以 typeof MyModuleType 描述了运行时模块值的形状。模块值只有一个属性,即 SomeClass。并且它没有任何属性 SomeType

如果你想获取类型只需引用导入:

var x: MyModuleType.SomeType;

TS 编译器仍然知道您的导入仅用作类型并且将被忽略。

关于javascript - typeof 的 TypeScript 动态模块加载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43938280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com