angular-docs-cn/packages
Alex Rickabaugh 5be186035f feat(ivy): enable inheritance of factory functions in definitions (#25392)
This commit creates an API for factory functions which allows them
to be inherited from one another. To do so, it differentiates between
the factory function as a wrapper for a constructor and the factory
function in ngInjectableDefs which is determined by a default
provider.

The new form is:

factory: (t?) => new (t || SomeType)(inject(Dep1), inject(Dep2))

The 't' parameter allows for constructor inheritance. A subclass with
no declared constructor inherits its constructor from the superclass.
With the 't' parameter, a subclass can call the superclass' factory
function and use it to create an instance of the subclass.

For @Injectables with configured providers, the factory function is
of the form:

factory: (t?) => t ? constructorInject(t) : provider();

where constructorInject(t) creates an instance of 't' using the
naturally declared constructor of the type, and where provider()
creates an instance of the base type using the special declared
provider on @Injectable.

PR Close #25392
2018-08-09 09:58:13 -07:00
..
animations refactor(animations): do not use short parameter names (#25198) 2018-08-01 10:51:58 -07:00
bazel build: stop printing source-map-support warning (#25339) 2018-08-08 19:02:57 -07:00
benchpress build(bazel): //modules/benchmarks/src/largetable/render3:perf bazel protractor test (#24788) 2018-07-24 08:26:16 -07:00
common style(common): fix short param names (#23667) 2018-08-03 14:09:27 -07:00
compiler feat(ivy): enable inheritance of factory functions in definitions (#25392) 2018-08-09 09:58:13 -07:00
compiler-cli feat(ivy): enable inheritance of factory functions in definitions (#25392) 2018-08-09 09:58:13 -07:00
core feat(ivy): enable inheritance of factory functions in definitions (#25392) 2018-08-09 09:58:13 -07:00
docs
elements feat(core): add DoBootstrap interface. (#24558) 2018-08-07 13:17:06 -07:00
examples fix(core): In Testability.whenStable update callback, pass more complete (#25010) 2018-08-06 13:49:19 -07:00
forms refactor(forms): `ngForm` element selector has been deprecated in favor of `ng-form` (#23721) 2018-08-02 08:34:43 -07:00
http docs(http): fixed example unit test for error catching (#25306) 2018-08-06 11:31:57 -07:00
language-service style: format .bzl files with buildifier (#23544) 2018-08-08 13:12:07 -07:00
platform-browser refactor(ivy): misc cleanup (#25291) 2018-08-05 15:31:19 -07:00
platform-browser-dynamic refactor(ivy): misc cleanup (#25291) 2018-08-05 15:31:19 -07:00
platform-server fix(animations): set animations styles properly on platform-server (#24624) 2018-06-25 07:58:11 -07:00
platform-webworker test(platform-webworker): avoid flakes due to existing `PlatformRef` (#24916) 2018-07-20 10:47:17 -07:00
platform-webworker-dynamic ci(ivy): configure CI environments for Ivy JIT and AOT (#24309) 2018-06-08 13:34:27 -07:00
private/testing refactor(core): remove withBody from public testing API (#25171) 2018-07-31 15:09:32 -07:00
router fix(router): take base uri into account in `setUpLocationSync()` (#20244) 2018-08-06 11:11:07 -07:00
service-worker fix(service-worker): don't include sourceMappingURL in ngsw-worker (#24877) 2018-07-20 11:49:46 -07:00
upgrade test(upgrade): reduce flaky-ness by increasing timeout (#24937) 2018-08-06 14:52:50 -07:00
BUILD.bazel feat(bazel): introduce a binary stamping feature (#22176) 2018-02-15 14:08:53 -08:00
README.md
empty.ts
es6-subset.d.ts
goog.d.ts
license-banner.txt
rollup.config.js
system.d.ts
tsconfig-build.json build(bazel): Turning on strictPropertyInitialization for Angular. (#24572) 2018-06-25 07:57:13 -07:00
tsconfig-metadata.json
tsconfig.json build: upgrade jasmine (and related typings) to latest version (#19904) 2018-07-06 13:48:02 -07:00
types.d.ts build(bazel): use bazel managed node_modules for downstream angular from source build support (#24663) 2018-07-26 17:02:21 -07:00

README.md

Angular

The sources for this package are in the main Angular repo. Please file issues and pull requests against that repo.

License: MIT