Issue 1:
I'm submitting a ...

bug report

feature request

support request => Please do not submit support request here, see note at the top of this template.

Current behavior

If you have base class A, with dependencies specified in its constructor, and then create class B, which subclasses A, and do not specify a constructor, when you try to inject class B into a component, its dependencies are not resolved per its parent constructor. As a workaround, I am duplicating the constructor of A in B.

Expected/desired behavior

Dependencies specified in the parent constructor are resolved.

What is the motivation / use case for changing the behavior?

Developer ergonomics. This bug fix should be feasible since the entire prototype chain is available from within the decorator (at least in modern browsers): https://www.typescriptlang.org/play/#src=abstract%20class%20RuntimeErrorHandler%20%7B%0D%0A%09constructor(msg%3A%20string)%20%7B%7D%0D%0A%7D%0D%0A%0D%0Afunction%20test(constructor%3A%20Function)%20%7B%0D%0A%09console.log(constructor.prototype)%3B%0D%0A%7D%0D%0A%0D%0A%40test%0D%0Aclass%20ConsoleErrorHandler%20extends%20RuntimeErrorHandler%20%7B%7D

Please tell us about your environment:

Node 5.

Angular version: 2.0.0-beta.X

Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Language: [all | TypeScript X.X | ES6/7 | ES5 | Dart]

Issue 2:
I'm submitting a ... (check one with "x")

[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question

Current behavior

The client has been AOT compiled and bundled using Webpack2. Lazy loading has been implemented using angular-router-loader. Before navigating to a lazy loaded module I force offline mode and then try to navigate. Routing fails, as expected, because it can't load the relevant chunk. The error is 'Loading chunk [chunk number] failed'. After switching back online router no longer works (either by router.navigate or by routerLink directive). Router does not resolve neither reject the navigation command.

The error logged is Error: Uncaught (in promise): Error: Loading chunk 1 failed

Expected behavior

The router shouldn't stop working.

Minimal reproduction of the problem with instructions

Angular2 client has a feature module, that is lazy loaded.

e.g. { path: 'lazy', loadChildren: './+lazy/lazy.module#LazyModule' }

webpack is configured appropriately:

{ test: /\.ts$/, loaders: [ 'awesome-typescript-loader', 'angular2-template-loader', 'angular-router-loader?aot=true' ], }

Before navigating to the lazy module switch to Offline (e.g. by using Chrome developer tools). Then switch back Online and try to navigate with the router again.

What is the motivation / use case for changing the behavior?

The app should be fully functional when the connection is restored, the user should not be forced to reload the app.

Please tell us about your environment:

Working on Windows 10, Visual studio 2015, Asp.net core

Angular version:

Has been reproduced in 2.2.4 & 2.3.1

Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Tested only on Chrome 54

Language: [all | TypeScript X.X | ES6/7 | ES5]

Typescript 2.0.10

Node (for AoT issues): node --version =

node 5.6.0