David Mulder David Mulder - 4 months ago 8
Javascript Question

Is there any environment that implements the new custom elements specification?

A new version of the custom elements has been released at some point in the past (not sure when, as I haven't directly used the spec for awhile). Is there any polyfill or environment that implements the new custom elements specification?

Reason I am asking is that I will be giving a talk on Friday about the web components specs and it will hardly do to give a talk without a demonstrations, but from what I can see all browsers and polyfills still implement the old spec. Looking at web archive I can see that the new spec has been around for at least a few months, so I would expect it to be implemented at least somewhere.

Answer

The Custom Elements v1 Specification is available in Chrome v53 (beta) and v54 (Canary). It's a native implementation.

Note: You have to run it with a flag to activate the feature:

> chrome --enable-blink-features=CustomElementsV1

You can add the flag in your shortcut if you want.

PS: I recommend to use the last build (Canary) because the implementation is being updated on a regular basis.


Running Example :

class CEv1 extends HTMLElement 
{
  constructor () 
  {
    super()
    console.log( "created this=", this )			
  }
  
  connectedCallback ()
  {
    this.innerHTML = "Hello V1!"
  }
} 
customElements.define( "test-v1", CEv1 )
<test-v1>Feature not activated</test-v1>