W3C home > Mailing lists > Public > public-webapps@w3.org > January to March 2015

Re: Custom element design with ES6 classes and Element constructors

From: Anne van Kesteren <annevk@annevk.nl>
Date: Mon, 12 Jan 2015 14:16:40 +0100
Message-ID: <CADnb78hVbqq4E5hfddm+MFpuqZF_a-TmuGzJMTtj_-5QUs4veQ@mail.gmail.com>
To: Domenic Denicola <d@domenic.me>
Cc: WebApps WG <public-webapps@w3.org>
On Sun, Jan 11, 2015 at 9:13 PM, Domenic Denicola <d@domenic.me> wrote:
> However, I don't understand how to make it work for upgraded elements at all

Yes, upgrading is the problem. There's two strategies as far as I can
tell to maintain a sane class design:

1) There is no upgrading. We synchronously invoke the correct
constructor. I've been trying to figure out the drawbacks, but I can't
find the set of mutation events problems that relates to this. One
obvious drawback is needing to have all the code in place so you might
need a way to delay the parser (return of synchronous <script>

2) As you indicate, upgrading becomes replacing. This used to be the
old model and got eventually killed through
https://www.w3.org/Bugs/Public/show_bug.cgi?id=21063 though there's no
clear summary as to why that happened. Issues seem to be: mutation
observer spam, dangling references, attributes, event listeners.

Forever prototype munging seems really broken too so we should really
revisit these two approaches to custom elements I think.

Received on Monday, 12 January 2015 13:17:03 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 18:14:43 UTC