рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:
<br i="6"/>
TS2351 Cannot use 'new' with an expression whose type lacks a call or construct signature.<br i="7"/>
<br i="10"/>
class A {<br i="11"/>
constructor() { ... }<br i="12"/>
refresh() { return new this.constructor; }<br i="13"/>
}<br i="14"/>
new this.constructor рд╢реБрджреНрдз JS рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдзрдиреНрдпрд╡рд╛рдж:)
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ constructor
рдХрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗрд╡рд▓ Function
рд╣реИред рдЖрдк рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
class A { constructor() { } refresh() { return new (<typeof A>this.constructor); } }
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ
constructor
рдХрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗрд╡рд▓Function
рд╣реИред рдЖрдк рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ: