Conversation
improve typings for owl plugins
b4d6ad8 to
a25dcc5
Compare
|
Related problem: t-foreach cannot shadow properties for which a getter or setter exists in the rendering context (playground), the set expression silently fails. In the same vein, if a setter exists, it will be invoked instead of declaring a shadowing "local". Attempting to t-set a value for which a getter exists on the component will crash with Whether this crashes (as with t-set) or fails silently (as in t-foreach) depends on whether the set expression is executed in strict mode. the t-foreach set expression is in the compiled template which is not strict mode (should they be?) or in the owl code (t-set invokes setContextValue that invokes the actual set expression), which is either in a module which is implicitly strict mode, or in an IIFE that's explicitly set to strict mode by the bundling toolchain. PS: while the problem becomes less prominent/annoying without implicit |
before this commit, effects caused in plugins were not always properly handled because the parent effect in plugin manager would rerun, but then since the plugin is already instantiated, its sub effect would not rerun. we solve the problem by not tracking the values when we instantiate plugins
a25dcc5 to
8038483
Compare
No description provided.