It's incredibly important that we agree that association of a <template> with <element> happens on the element side, something like: <element template="foo-template"> (or by placing the template inside element, if that is the API we want). I don't think this part is opinion, but because doing the reverse - marking on the <template> which <element> it refers to - hinders a few valid use-cases:
- one <template> from being used by many different <elements> - changing a template association on a single instance of an element type - say you have an <x-foo> on the page that you want to switch template associations on, but not for every other <x-foo> in the document. Wouldn't this case be far more clear cut if you could just query for the element and change some property? For instance: fooElement.template = 'foo-template-2'; Boom! This particular foo element just switched templates. On Wed, Apr 10, 2013 at 8:19 PM, Daniel Buchner <dan...@mozilla.com> wrote: > Here are a few (compelling?) answers/arguments: > > 1. Style elements had never done this before, yet it rocks socks: > <style scoped> > 2. It would be new for script elements, but hardly new for other > elements. There are plenty of elements that have various behaviors or > visual representations only when placed inside specific elements. Given > this is already an advanced web API, I'm not sure a little upfront learning > is a huge concern. We could even allow for this, given the paradigm is > already established: <script scoped> *// could scope 'this' ref to > the parentNode* > 3. Are you referring to <template> attachment here? If so, I agree, > thus the proposal I submitted allows for both ( > https://gist.github.com/csuwldcat/5360471). If you want your template > automatically associated with your <element>, put it inside, if not, you > can specify which <template> a custom element should use by reference to > its ID. > > > On Wed, Apr 10, 2013 at 8:00 PM, John J Barton < > johnjbar...@johnjbarton.com> wrote: > >> >> >> >> On Wed, Apr 10, 2013 at 6:51 PM, Dimitri Glazkov <dglaz...@google.com>wrote: >> >>> On Wed, Apr 10, 2013 at 6:38 PM, Rick Waldron <waldron.r...@gmail.com> >>> wrote: >>> > Everyone's answer to this should be "no"; changing the expected value >>> of the >>> > top level "this", in some magical way, simply won't work. >>> >>> Can you explain why you feel this way? >>> >> >> 1) Because <script> has never done this before, so it better be >> compelling. >> 2) Because causing |this| to change by moving the <script> tag in the >> HTML or adding a layer of elements etc seems likely to cause hard to >> understand bugs. >> 3) Forcing the binding based on position is inflexible. >> >> To be sure this is implicit-declarative vs explicit-imperative bias, not >> evidence. >> >> Oh, sorry you were asking Rick. >> jjb >> > >