Found a work around. As you suggested, this is related to issue 36. It only 
happens when the iron-list is attached to the DOM but not rendered due to a 
parent element being hidden. So the solution is to not instantiate the 
array until after it's rendered. So rather then have default values, I 
check if the array is null when pushing new items into it.

addItem: function(item) {
    if(this.myItems==null) this. myItems =[];
    this.push("myItems", JSON.parse('{"name":"'+item+'"}'));
    console.log('my-list:'+item);
}


This seems to work, without error.

On Friday, July 24, 2015 at 11:58:16 AM UTC-7, Kujako wrote:
>
> Weirder and weirder. If I put the <dom-module> inline in index.html I do 
> not see the error, but in my project I also do not see the iron-list 
> rendered. If I move it to an external file, I get the error but DO see the 
> elements. So no work around....
>
> I really need to stop the error. Everything works fine with the error when 
> run from the desktop, but the error causes Cordova to halt.
>
> On Friday, July 24, 2015 at 11:34:50 AM UTC-7, Emmanuel Garcia wrote:
>>
>> It seems like this issue is related to 
>> https://github.com/PolymerElements/iron-list/issues/36 as well.
>>
>> ~ Emmanuel
>>
>>
>> On Fri, Jul 24, 2015 at 11:23 AM, Kujako <[email protected]> wrote:
>>
>>> That looks right, and when I copy in my code it works OK. The error 
>>> seems to only happen when I have my-list defined in an external file....
>>>
>>> So if I copy the code into a file named "my-list.html" and import it 
>>> with...
>>> <link rel="import" href="/elements/my-list.html"/>
>>>
>>> and then reference it with...
>>> <my-list></my-list>
>>>
>>>
>>> I see the error...
>>>
>>> On Friday, July 24, 2015 at 11:01:29 AM UTC-7, Emmanuel Garcia wrote:
>>>>
>>>> Is there something different in this example 
>>>> http://jsbin.com/facani/edit?html,output (apart from the css)? 
>>>>
>>>> On Friday, July 24, 2015 at 10:47:11 AM UTC-7, Kujako wrote:
>>>>>
>>>>> Yes, bower.json shows version 1.0.1
>>>>>
>>>>> On Friday, July 24, 2015 at 10:37:29 AM UTC-7, Emmanuel Garcia wrote:
>>>>>>
>>>>>> Are you using the last version of iron-list (v1.0.1)?  Here's your 
>>>>>> code using the last version: http://jsbin.com/facani/edit?html,output
>>>>>>
>>>>>> bower update or 
>>>>>> https://github.com/PolymerElements/iron-list/releases/tag/v1.0.1
>>>>>>
>>>>>>
>>>>>> On Friday, July 24, 2015 at 9:16:32 AM UTC-7, Kujako wrote:
>>>>>>>
>>>>>>> I'm trying to setup an iron-list using a local array for its data 
>>>>>>> source.
>>>>>>>
>>>>>>> <dom-module id=“my-list">
>>>>>>>   <template> 
>>>>>>>     <iron-list items="{{myItems}}" as="item" indexAs="myIndex"> 
>>>>>>>       <template> 
>>>>>>>         <div class="item">{{item.name}}</div> 
>>>>>>>       </template> 
>>>>>>>     </iron-list> 
>>>>>>>   </template> 
>>>>>>>   <script> 
>>>>>>>     Polymer({ 
>>>>>>>       is:’my-list', 
>>>>>>>       properties: { 
>>>>>>>         myItems: { 
>>>>>>>         type: Array, 
>>>>>>>         notify: true 
>>>>>>>         } 
>>>>>>>       }, 
>>>>>>>       addItem: function(item) { 
>>>>>>>         this.push("myItems", JSON.parse('{"name":"'+item+'"}')); 
>>>>>>>       }, 
>>>>>>>       ready: function() { 
>>>>>>>         this.myItems=[ 
>>>>>>>         {'name':'Taco'}, 
>>>>>>>         {'name':'Burger'}, 
>>>>>>>         {'name':'Fries'}, 
>>>>>>>         {'name':'Chips'} 
>>>>>>>         ]; 
>>>>>>>       } 
>>>>>>>     }); 
>>>>>>>   </script> 
>>>>>>> </dom-module>
>>>>>>>
>>>>>>>
>>>>>>> Everything works, but from the ready() method I get "Uncaught 
>>>>>>> RangeError: Invalid array length". This seems to happen whenever the 
>>>>>>> array 
>>>>>>> is set for the first time. While this does not impact operations from a 
>>>>>>> browser, Cordova stops on this error.
>>>>>>>
>>>>>>>
>>>>>>> Any ideas as to how to suppress or prevent this error? Kind of 
>>>>>>> running blind as I can't find any example code to work off of.
>>>>>>>
>>>>>>>
>>>>>>>
>>

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/d64901d2-da87-41d8-8698-da1a1482bf77%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to