fix(fast-element-1): some template bindings not properly being marked as volatile #6966
Labels
status:needs-investigation
Needs additional investigation
status:under-consideration
Issue is being reviewed by the team.
馃悰 Bug Report
Some bindings that should be marked as volatile are not, so changes may not be properly detected.
??
. This means a binding expression such asx => x.foo ?? x.bar
might miss changes tobar
.HTMLBindingDirective
constructor tests the stringified binding function for volatility, rather than the parsed parts of the aggregate expression.馃捇 Repro or Code Sample
The following binding expressions will not reliably detect changes:
my-attr="${x => x.foo ?? x.bar}
because nullish coalescing does not match the regexmy-attr="foo ${x => x.bar && x.baz}
because aggregate bindings are never marked volatilemy-attr="foo ${x => x.bar || x.baz}
because aggregate bindings are never marked volatile馃 Expected Behavior
Attributes should always be updated when a value in the binding expression changes.
馃槸 Current Behavior
Attributes are not always updated when a value in the binding expression changes.
馃拋 Possible Solution
馃敠 Context
Discovered during resolution of ni/nimble#1839
The text was updated successfully, but these errors were encountered: