构造函数只读参数

时间:2019-12-09 08:24:42

标签: typescript

我正在分析一些TypeScript代码,并且在类定义中遇到了这样的声明:

construcotrParam

但进一步,我看到construcotrParam正常使用。

是否可能export abstract class ... extends ... implements ...属性是“默认创建和分配的”属性?

它也包装在extends中(而implementexport是可以理解的继承关键字,readonly用于处理模块,但可能与讨论有关)

更新

根据this post,它看起来确实像这样工作-默认情况下,为标记为<nav class="navbar navbar-dark bg-dark text-white"> <div class="row w-100 d-flex align-items-center"> <div class="col-2 text-left"> <button class="navbar-toggler" type="button" id="menu-toggle"> <span class="navbar-toggler-icon"></span> </button> </div> <div class="col-8 text-center"> main title </div> <div class="col-2 text-right"> right </div> </div> </nav> 的构造函数创建属性并为其赋值。

2 个答案:

答案 0 :(得分:1)

根据this article,存在将所有类属性声明为构造函数参数的简写形式,例如:

constructor ( public someProp : number )

在这种情况下,将创建someProp。显然,这是完全限定的声明,即我们具有类型声明(在这种情况下为number)和访问修饰符等,因此,代替public的可能是private readonly

答案 1 :(得分:0)

您可以执行以下操作:

constructor(readonly construcotrParam : Type = "Normal") {
  // here we don't assign construcotrParam to anything
}