b0c1282fbe
Currently if there are multiple source files within a given TypeScript source file, only the last template in the source file is checked as we store templates in a `Map` with the source file paths as keys. This is problematic as multiple templates can live within the same source file and we therefore accidentally overwrite existing entries in the resolved templates map. PR Close #29841 |
||
---|---|---|
.. | ||
angular | ||
google3 | ||
BUILD.bazel | ||
README.md | ||
analyze_template.ts | ||
index.ts |
README.md
Assignments to template variables
With Ivy, assignments to template variables are no longer supported as template variables are effectively constants.
This means that assignments to template variables will break your application once Ivy is enabled by default. For example:
<button *ngFor="let option of options"
(click)="option = 'newButtonText'">
{{ option }}
</button>
In the example from above, a value is assigned to the option
template variable on click
. This will ultimately break your
application and therefore the logic needs to be adjusted to not
update the option
variable, but rather the given element in
the options
array:
<button *ngFor="let option of options; let idx = index"
(click)="options[idx] = 'newButtonText'">
{{ option }}
</button>