In ngUpgrade (dynamic) we create a dynamic Angular `Directive` that wraps AngularJS components that are being upgraded. The constructor of this `Directive` class returns a different instance than `this`. It is this instance that actually contains the life-cycle hook handlers. This would break in ivy, since the methods on the prototype of the original class are wired up, rather than the instance methods. This results in hooks like `ngOnInit` not being called. This commit refactors the code to extend the inner class that was being returned so that the prototype chain is correct for both ViewEngine and ivy. This change resolves a number of failing ivy tests, but also exposes other failures that were masked by this issue. The tests have been updated accordingly. (FW-812) PR Close #27660
fix(upgrade): upgrade Directive facade should not return different instance from constructor (#27660)
…
…
…
…
…
…
Angular
Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.
Quickstart
Changelog
Learn about the latest improvements.
Want to help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.
Description
Languages
TypeScript
68.6%
HTML
12.8%
JavaScript
8.4%
Pug
7%
Starlark
1.4%
Other
1.7%