๋ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
<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
์ ๋๋ค. ๋์ ๋ค์๊ณผ ๊ฐ์ด ์์ฑํ ์ ์์ต๋๋ค.