- From: Andrea Giammarchi <notifications@github.com>
- Date: Sat, 20 Oct 2018 02:11:32 -0700
- To: w3c/webcomponents <webcomponents@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Saturday, 20 October 2018 09:11:53 UTC
@franktopel it's useful for empty nodes with shadow dom, and not much else indeed. With `parsedCallback` you can setup sure that attributes are there as well. Meanwhile, if you react to `attributeChangedCallback`, if `this.parsed` is false you should queue the operations if important for the component state. ```js const attributeChanged = new WeakMap; class MyEl extends HTMLParsedElement { parsedCallback() { // setup the node const changes = attributeChanged.get(this); if (changes) { attributeChanged.delete(this); changes.forEach(args => this. attributeChangedCallback.apply(this, args)); } } attributeChangedCallback(name, oldVal, newVal) { if (!this.parsed) { const changes = attributeChanged.get(this) || []; changes.push([name, oldVal, newVal]); if (changes.length === 1) attributeChanged.set(this, changes); return; } // the rest of the code } connectedCallback() { // here you can safely add listeners // or set own component properties this.live = true; } disconnectedCallback() { // here you can safely remove listeners this.live = false; } } ``` -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/w3c/webcomponents/issues/551#issuecomment-431563622
Received on Saturday, 20 October 2018 09:11:53 UTC