1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
tests/cases/compiler/thisInOuterClassBody.ts(5,16): error TS2334: 'this' cannot be referenced in a static property initializer.
tests/cases/compiler/thisInOuterClassBody.ts(12,22): error TS2339: Property 'y' does not exist on type 'Foo'.
tests/cases/compiler/thisInOuterClassBody.ts(18,22): error TS2339: Property 'x' does not exist on type 'typeof Foo'.
==== tests/cases/compiler/thisInOuterClassBody.ts (3 errors) ====
class Foo {
x = this;
static y = this;
~~~~
!!! error TS2334: 'this' cannot be referenced in a static property initializer.
bar() {
this.x; // 'this' is type 'Foo'
var f = () => this.x; // 'this' should be type 'Foo' as well
var p = this.y;
~
!!! error TS2339: Property 'y' does not exist on type 'Foo'.
return this;
}
static bar2() {
var a = this.y;
var b = this.x;
~
!!! error TS2339: Property 'x' does not exist on type 'typeof Foo'.
}
}
|