- From: Sasha Firsov <notifications@github.com>
- Date: Wed, 15 May 2024 09:49:16 -0700
- To: WICG/webcomponents <webcomponents@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Wednesday, 15 May 2024 16:49:20 UTC
The API is nice, but HTML engines do have an attribute node and [Attr type](https://developer.mozilla.org/en-US/docs/Web/API/Attr) ```ts interface Attr extends Node { ``` Based on this concept, in `custom-element` it is exposed via declarative syntax: ```html <custom-element tag="dce-link" hidden=""> <attribute name="p1">default_P1 </attribute> <attribute name="p2" select="'always_p2'"></attribute> <attribute name="p3" select="//p3 ?? 'def_P3' "></attribute> p1:{$p1} <br> p2: {$p2} <br> p3: {$p3} </custom-element> <dce-link></dce-link> <dce-link p1="123" p3="qwe"></dce-link> ``` More [live samles](https://unpkg.com/@epa-wg/custom-element@0.0.21/demo/parameters.html) As for imperative declaration, the `class Attribute` seems fine to me, but only trouble it is already a part of all browser implementations. Instead of trying to propose own, perhaps worth to explore existing `Attribute` implementation in WebKit? The only action in this case would be * make it part of HTML parser, i.e. add to HTML5 * add the functionality of observed attributes. -- Reply to this email directly or view it on GitHub: https://github.com/WICG/webcomponents/issues/1029#issuecomment-2113018828 You are receiving this because you are subscribed to this thread. Message ID: <WICG/webcomponents/issues/1029/2113018828@github.com>
Received on Wednesday, 15 May 2024 16:49:20 UTC