File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -12,7 +12,6 @@ Examples of **incorrect** code for this rule:
1212
1313``` js
1414/* eslint no-use-before-define: "error"*/
15- /* eslint-env es6*/
1615
1716alert (a);
1817var a = 10 ;
@@ -29,13 +28,29 @@ var b = 1;
2928 alert (c);
3029 let c = 1 ;
3130}
31+
32+ {
33+ class C extends C {}
34+ }
35+
36+ {
37+ class C {
38+ static x = " foo" ;
39+ [C .x ]() {}
40+ }
41+ }
42+
43+ {
44+ const C = class {
45+ static x = C ;
46+ }
47+ }
3248```
3349
3450Examples of ** correct** code for this rule:
3551
3652``` js
3753/* eslint no-use-before-define: "error"*/
38- /* eslint-env es6*/
3954
4055var a;
4156a = 10 ;
@@ -53,6 +68,24 @@ function g() {
5368 let c;
5469 c++ ;
5570}
71+
72+ {
73+ class C {
74+ static x = C ;
75+ }
76+ }
77+
78+ {
79+ const C = class C {
80+ static x = C ;
81+ }
82+ }
83+
84+ {
85+ const C = class {
86+ x = C ;
87+ }
88+ }
5689```
5790
5891## Options
@@ -103,18 +136,32 @@ Examples of **incorrect** code for the `{ "classes": false }` option:
103136
104137``` js
105138/* eslint no-use-before-define: ["error", { "classes": false }]*/
106- /* eslint-env es6*/
107139
108140new A ();
109141class A {
110142}
143+
144+ {
145+ class C extends C {}
146+ }
147+
148+ {
149+ class C extends D {}
150+ class D {}
151+ }
152+
153+ {
154+ class C {
155+ static x = " foo" ;
156+ [C .x ]() {}
157+ }
158+ }
111159```
112160
113161Examples of ** correct** code for the ` { "classes": false } ` option:
114162
115163``` js
116164/* eslint no-use-before-define: ["error", { "classes": false }]*/
117- /* eslint-env es6*/
118165
119166function foo () {
120167 return new A ();
@@ -139,6 +186,19 @@ const f = () => {};
139186
140187g ();
141188const g = function () {};
189+
190+ {
191+ const C = class {
192+ static x = C ;
193+ }
194+ }
195+
196+ {
197+ const C = class {
198+ static x = foo;
199+ }
200+ const foo = 1 ;
201+ }
142202```
143203
144204Examples of ** correct** code for the ` { "variables": false } ` option:
@@ -158,4 +218,11 @@ const f = () => {};
158218
159219const e = function () { return g (); }
160220const g = function () {}
221+
222+ {
223+ const C = class {
224+ x = foo;
225+ }
226+ const foo = 1 ;
227+ }
161228```
You can’t perform that action at this time.
0 commit comments