22 lines
990 B
Plaintext
22 lines
990 B
Plaintext
tests/cases/compiler/propertyParameterWithQuestionMark.ts(6,5): error TS2322: Type '{}' is not assignable to type 'C'.
|
|
Property 'x' is missing in type '{}'.
|
|
tests/cases/compiler/propertyParameterWithQuestionMark.ts(8,1): error TS2322: Type '{ x?: any; }' is not assignable to type 'C'.
|
|
Property 'x' is optional in type '{ x?: any; }' but required in type 'C'.
|
|
|
|
|
|
==== tests/cases/compiler/propertyParameterWithQuestionMark.ts (2 errors) ====
|
|
class C {
|
|
constructor(public x?) { }
|
|
}
|
|
|
|
// x should not be an optional property
|
|
var v: C = {}; // Should fail
|
|
~
|
|
!!! error TS2322: Type '{}' is not assignable to type 'C'.
|
|
!!! error TS2322: Property 'x' is missing in type '{}'.
|
|
var v2: { x? }
|
|
v = v2; // Should fail
|
|
~
|
|
!!! error TS2322: Type '{ x?: any; }' is not assignable to type 'C'.
|
|
!!! error TS2322: Property 'x' is optional in type '{ x?: any; }' but required in type 'C'.
|
|
var v3: { x } = new C; // Should succeed |