- From: Nicolas Gilbert <notifications@github.com>
- Date: Tue, 07 Mar 2023 09:35:35 -0800
- To: WICG/webcomponents <webcomponents@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Tuesday, 7 March 2023 17:35:47 UTC
> No. It just means that you can't recursively call your own constructor before `super()` - which is already a restriction due to how upgrades work. > This isn't a thing in the current proposal. Calling constructors is only supported for the global registry It comes back to what I was saying, unless you are sure your component will be exposed globally, using constructors is not safe anymore. ```js // This lib exposes 2 public components, but does not know if there are going to be defined // globally or scoped, nor the tag used. The only expectation is that they are going to be // defined somewhere accessible. class A extends HTMLElement {} class B extends HTMLElement { connectedCallback() { this.appendChild(new A()); } } export { A, B }; ``` Component `A` works globally or scoped, `B` will work globally but fails when scoped. Wouldn't it be a good practice for libraries not to assume their component is globally defined, nor the actual tag it is defined under? -- Reply to this email directly or view it on GitHub: https://github.com/WICG/webcomponents/issues/969#issuecomment-1458566917 You are receiving this because you are subscribed to this thread. Message ID: <WICG/webcomponents/issues/969/1458566917@github.com>
Received on Tuesday, 7 March 2023 17:35:47 UTC