From c8d00dc191afc47e4b40c8a1b3d25114cb3afa4c Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Sat, 23 Apr 2016 22:02:30 -0700 Subject: [PATCH] fix(codegen): add explicit any to class fields fixes #8204 Closes #8205 --- modules/angular2/src/compiler/output/ts_emitter.ts | 2 ++ modules/angular2/test/compiler/output/ts_emitter_spec.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/angular2/src/compiler/output/ts_emitter.ts b/modules/angular2/src/compiler/output/ts_emitter.ts index 960372b540..b7bd8b7bed 100644 --- a/modules/angular2/src/compiler/output/ts_emitter.ts +++ b/modules/angular2/src/compiler/output/ts_emitter.ts @@ -130,6 +130,8 @@ class _TsEmitterVisitor extends AbstractEmitterVisitor implements o.TypeVisitor if (isPresent(field.type)) { ctx.print(`:`); field.type.visitType(this, ctx); + } else { + ctx.print(`: any`); } ctx.println(`;`); } diff --git a/modules/angular2/test/compiler/output/ts_emitter_spec.ts b/modules/angular2/test/compiler/output/ts_emitter_spec.ts index 7dcaaa4a59..802f0e292b 100644 --- a/modules/angular2/test/compiler/output/ts_emitter_spec.ts +++ b/modules/angular2/test/compiler/output/ts_emitter_spec.ts @@ -235,7 +235,7 @@ export function main() { it('should support declaring fields', () => { expect(emitStmt(new o.ClassStmt('SomeClass', null, [new o.ClassField('someField')], [], null, []))) - .toEqual(['class SomeClass {', ' someField;', '}'].join('\n')); + .toEqual(['class SomeClass {', ' someField: any;', '}'].join('\n')); expect(emitStmt(new o.ClassStmt('SomeClass', null, [new o.ClassField('someField', o.INT_TYPE)], [], null, []))) .toEqual(['class SomeClass {', ' someField:number;', '}'].join('\n'));