mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
Ivy definition looks something like this:
```
class MyService {
static ngInjectableDef = defineInjectable({
…
});
}
```
Here the argument to `defineInjectable` is well known public contract which needs
to be honored in backward compatible way between versions. The type of the
return value of `defineInjectable` on the other hand is private and can change
shape drastically between versions without effecting backwards compatibility of
libraries publish to NPM. To our users it is effectively an `OpaqueToken`.
By prefixing the type with `ɵ` we are communicating the the outside world that
the value is not public API and is subject to change without backward compatibility.
PR Close #23371
|
||
|---|---|---|
| .. | ||
| animations | ||
| common | ||
| compiler | ||
| core | ||
| elements | ||
| forms | ||
| http | ||
| platform-browser | ||
| platform-browser-dynamic | ||
| platform-server | ||
| platform-webworker | ||
| platform-webworker-dynamic | ||
| router | ||
| service-worker | ||
| upgrade | ||
| BUILD.bazel | ||