如何创建真实类的定义?

沙尔

如果我有一堂课:

在文件“BigClass.ts”中:

class BigClass{
  /// a lot of properties and methods here, I mean, a lot
}
window['big'] = new BigClass();

我想在“Big.d.ts”中声明全局一个:

declare let big:BigClass;

TS 不会让我这样做,因为我也只能使用 .d 文件中的接口来定义声明的变量。

但是这个类很大,我不想为它创建一个接口,我会在那里重复每个prop和方法......有没有办法解决它?

或者也许还有另一种声明全局变量的方法,基于我不知道的现有类?

阿维亚德·哈达德

做到这一点的方法是简单地把declare let big:BigClass;BigClass.ts,而不是在一个d.ts文件。这是完全合法的。

这是假设 BigClass.ts 不是模块,这意味着它没有 import\export 语句。如果它不是模块,其他文件也会“看到”declare 语句。

然而,这是一个不好的做法,因为您传递的事实window恰好是浏览器中的全局对象。

更好的方法:

//file: BigClass.ts

class BigClass{
}

interface Window {
  big: BigClass;
}
window.big = new BigClass();

而且由于模块确实更易于使用,因此您可以通过以下方式使用模块执行此操作:

//file: BigClass.ts

export class BigClass{
}
declare global {
  interface Window {
    big: BigClass;
  }
}
window.big = new BigClass();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何创建类图并编写定义类的伪代码?

来自分类Dev

如何从向量获取真实的类实例名称?

来自分类Dev

代理模式:创建真实对象的效率如何?

来自分类Dev

如何在自定义第 2 层文本中使用真实签名时间戳在 itextpdf 上创建签名外观

来自分类Dev

如何使用Gremlin在OrientDB中创建自定义类

来自分类Dev

如何创建我可以定义的类是字典中的键?

来自分类Dev

如何从自定义类Person创建数据集?

来自分类Dev

如何创建uiimageview的自定义类-Swift

来自分类Dev

如何定义此Superhero类,然后创建/使用它的实例

来自分类Dev

如何在Java中创建自定义JButton类?

来自分类Dev

如何从变量创建自定义类?(不是对象)

来自分类Dev

如何创建用户定义的类型模板类对象C ++

来自分类Dev

如何在Swift中创建自定义UITableViewCell类?

来自分类Dev

如何创建其构造函数定义为private的类的对象

来自分类Dev

如何为类级别的typedef函数创建定义

来自分类Dev

如何创建uiimageview的自定义类-Swift

来自分类Dev

如何在Cloudmine中创建自定义登录类?

来自分类Dev

如何在以用户定义的类对象作为类成员的Java中创建用户定义的不可变类?

来自分类Dev

在类定义中创建对象

来自分类常见问题

如何获得Java类的真实模块依赖关系?

来自分类Dev

我如何获得C#类的真实姓名?

来自分类Dev

如何告诉 Mockito 使用帮助类的真实(未模拟)版本?

来自分类Dev

如何用仅在类本身未定义时才重写的元类创建类属性?

来自分类Dev

如何在其他类中定义了Tk()的类中创建StringVar?

来自分类Dev

如何从另一个类中定义的类创建数组

来自分类Dev

创建从预定义的超类扩展的类

来自分类Dev

类定义如何工作?

来自分类Dev

如何腌制类定义?

来自分类Dev

如何动态创建类

Related 相关文章

  1. 1

    如何创建类图并编写定义类的伪代码?

  2. 2

    如何从向量获取真实的类实例名称?

  3. 3

    代理模式:创建真实对象的效率如何?

  4. 4

    如何在自定义第 2 层文本中使用真实签名时间戳在 itextpdf 上创建签名外观

  5. 5

    如何使用Gremlin在OrientDB中创建自定义类

  6. 6

    如何创建我可以定义的类是字典中的键?

  7. 7

    如何从自定义类Person创建数据集?

  8. 8

    如何创建uiimageview的自定义类-Swift

  9. 9

    如何定义此Superhero类,然后创建/使用它的实例

  10. 10

    如何在Java中创建自定义JButton类?

  11. 11

    如何从变量创建自定义类?(不是对象)

  12. 12

    如何创建用户定义的类型模板类对象C ++

  13. 13

    如何在Swift中创建自定义UITableViewCell类?

  14. 14

    如何创建其构造函数定义为private的类的对象

  15. 15

    如何为类级别的typedef函数创建定义

  16. 16

    如何创建uiimageview的自定义类-Swift

  17. 17

    如何在Cloudmine中创建自定义登录类?

  18. 18

    如何在以用户定义的类对象作为类成员的Java中创建用户定义的不可变类?

  19. 19

    在类定义中创建对象

  20. 20

    如何获得Java类的真实模块依赖关系?

  21. 21

    我如何获得C#类的真实姓名?

  22. 22

    如何告诉 Mockito 使用帮助类的真实(未模拟)版本?

  23. 23

    如何用仅在类本身未定义时才重写的元类创建类属性?

  24. 24

    如何在其他类中定义了Tk()的类中创建StringVar?

  25. 25

    如何从另一个类中定义的类创建数组

  26. 26

    创建从预定义的超类扩展的类

  27. 27

    类定义如何工作?

  28. 28

    如何腌制类定义?

  29. 29

    如何动态创建类

热门标签

归档