Good to know! Thanks.

On Thu, Mar 13, 2014 at 10:17 PM, Scott Miles <[email protected]> wrote:

> First off, I gave the example on the wrong element, I believe this is more
> accurately what was asked for:
>
> <ul class="line-disruptions" on-tap="{{tapHandler}}">
>
>
> >> would it be possible to make tapHandler aware of the specific
> disruption instance
>
> Yes. The handler can do:
>
> tapHandler: function(event) {
>   // get the specific `line` object associated with the target element
>   var line = event.target.templateInstance.model;
>
>   // do stuff with `line`
>   ...
>
> }
>
>
> Scott
>
> P.S. This expression `event.target.templateInstance.model` is so handy
> that we plan on sugaring it in the near future, maybe by promoting the
> `model` property to the `event` object, or possibly as another argument to
> the handler.
>
>
> On Thu, Mar 13, 2014 at 9:32 PM, Michael Bleigh <[email protected]> wrote:
>
>> This isn't 100% related, but in the event of a declarative event in a
>> repeat, is there any way to pass non-rendered data through to the event
>> handler? For instance, in the example given, would it be possible to make
>> tapHandler aware of the specific disruption instance short of passing some
>> kind of index reference via data attributes etc.
>>
>> On Thursday, March 13, 2014 2:18:38 PM UTC-7, Scott Miles wrote:
>>
>>> The easiest way is to use Polymer's declarative event sugaring:
>>>
>>>   <li class="line-disruption {{disruption.class}}"
>>> *on-tap="{{tapHandler}}"*>{{disruption.from}} to {{disruption.to}}:
>>> {{disruption.status}}</li>
>>>
>>> See here for documentation: http://www.polymer-project.
>>> org/docs/polymer/polymer.html#declarative-event-mapping
>>>
>>> >> this.shadowRoot.querySelectorAll('ul.line-disruptions')
>>>
>>> This should work, as long as those elements exist at the time you
>>> perform the query. IOW, only after the template has stamped actual 'ul'
>>> elements will you be able to query for them.
>>>
>>>
>>> On Thu, Mar 13, 2014 at 4:14 AM, Martí Planellas <[email protected]>wrote:
>>>
>>>> Hi all, I've been fighting this for a while, I have this html in my
>>>> polymer element:
>>>>
>>>>    <div class="container">
>>>>         <ul class="lines">
>>>>             <template id="line" repeat="{{line in lines}}">
>>>>                 <li class="line {{line.class}}">
>>>>                     <div class="line-label">
>>>>                         <span class="line-name {{line.nameclass}}">
>>>>                             {{line.name}}
>>>>                         </span>
>>>>                         <span class="line-status {{line.class}}">
>>>>                             {{line.status}}
>>>>                         </span>
>>>>                     </div>
>>>>                     <ul class="line-disruptions">
>>>>                         <template id="disruption" repeat="{{disruption
>>>> in line.disruptions}}">
>>>>                             <li class="line-disruption
>>>> {{disruption.class}}">{{disruption.from}} to {{disruption.to}}:
>>>> {{disruption.status}}</li>
>>>>                         </template>
>>>>                     </ul>
>>>>                 </li>
>>>>             </template>
>>>>         </ul>
>>>>     </div>
>>>>
>>>> So there're two nested templates, now I want to add some click event on
>>>> the *ul.line-disruptions* elements, but I have no idea how to get to
>>>> these elements...
>>>>
>>>> I tried this.shadowRoot.querySelectorAll('ul.line-disruptions') but
>>>> nothing is returned.
>>>>
>>>> How do I access those nodes?
>>>>
>>>> Thanks.
>>>>
>>>> Follow Polymer on Google+: plus.google.com/107187849809354688692
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Polymer" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>>
>>>> To view this discussion on the web visit https://groups.google.com/d/
>>>> msgid/polymer-dev/76621c93-187f-4810-a3ef-026c080b4383%
>>>> 40googlegroups.com<https://groups.google.com/d/msgid/polymer-dev/76621c93-187f-4810-a3ef-026c080b4383%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  Follow Polymer on Google+: plus.google.com/107187849809354688692
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "Polymer" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/polymer-dev/6edef541-f33d-44f7-b976-d2d1f1379806%40googlegroups.com<https://groups.google.com/d/msgid/polymer-dev/6edef541-f33d-44f7-b976-d2d1f1379806%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

Follow Polymer on Google+: plus.google.com/107187849809354688692
--- 
You received this message because you are subscribed to the Google Groups 
"Polymer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/polymer-dev/CABrD70AnRKCxbykjwub2-e5iL4iRa_s8yZKn9jLLv4VUedZkTg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to