{"action":"created","issue":{"url":"https://api.github.com/repos/cleandart/react-dart/issues/60","repository_url":"https://api.github.com/repos/cleandart/react-dart","labels_url":"https://api.github.com/repos/cleandart/react-dart/issues/60/labels{/name}","comments_url":"https://api.github.com/repos/cleandart/react-dart/issues/60/comments","events_url":"https://api.github.com/repos/cleandart/react-dart/issues/60/events","html_url":"https://github.com/cleandart/react-dart/issues/60","id":97372255,"number":60,"title":"Support nested Lists of children","user":{"login":"greglittlefield-wf","id":1713967,"avatar_url":"https://avatars.githubusercontent.com/u/1713967?v=3","gravatar_id":"","url":"https://api.github.com/users/greglittlefield-wf","html_url":"https://github.com/greglittlefield-wf","followers_url":"https://api.github.com/users/greglittlefield-wf/followers","following_url":"https://api.github.com/users/greglittlefield-wf/following{/other_user}","gists_url":"https://api.github.com/users/greglittlefield-wf/gists{/gist_id}","starred_url":"https://api.github.com/users/greglittlefield-wf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/greglittlefield-wf/subscriptions","organizations_url":"https://api.github.com/users/greglittlefield-wf/orgs","repos_url":"https://api.github.com/users/greglittlefield-wf/repos","events_url":"https://api.github.com/users/greglittlefield-wf/events{/privacy}","received_events_url":"https://api.github.com/users/greglittlefield-wf/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-07-27T02:32:40Z","updated_at":"2016-03-31T17:29:19Z","closed_at":null,"body":"In JS, React renders `children` that consist of nested arrays by flattening them:\r\n```js\r\n// JS, nested\r\nA({},\r\n  B({}),\r\n  [\r\n    C({}),\r\n    C({}),\r\n    [\r\n      D({}),\r\n    ]\r\n  ],\r\n  B({})\r\n)\r\n// flattened rendered children of A\r\n[B, C, C, D, B]\r\n```\r\n\r\n\r\nThis doesn't work with nested Dart Lists, but it does work if JsArrays are specified instead:\r\n\r\n```dart\r\n// Dart, nested Lists\r\nA({}, [\r\n  B({}),\r\n  // Nested Dart List (DartObject from React's perspective)\r\n  [\r\n    C({}),\r\n    C({}),\r\n    // Nested Dart List\r\n    [\r\n      D({}),\r\n    ]\r\n  ],\r\n  B({})\r\n])\r\n// flattened rendered children of A (nested Lists don't appear)\r\n[B, B]\r\n\r\n\r\n// Dart, nested JSArrays\r\nA({}, [\r\n  B({}),\r\n  new JsArray.from([\r\n    C({}),\r\n    C({}),\r\n    new JsArray.from([\r\n      D({}),\r\n    ])\r\n  ]),\r\n  B({})\r\n])\r\n// flattened rendered children of A (nested converted Lists appear!)\r\n[B, C, C, D, B]\r\n```\r\n\r\nPerhaps react-dart should deep-convert nested Lists in `children` to JsArrays. Thoughts?"},"comment":{"url":"https://api.github.com/repos/cleandart/react-dart/issues/comments/204039080","html_url":"https://github.com/cleandart/react-dart/issues/60#issuecomment-204039080","issue_url":"https://api.github.com/repos/cleandart/react-dart/issues/60","id":204039080,"user":{"login":"greglittlefield-wf","id":1713967,"avatar_url":"https://avatars.githubusercontent.com/u/1713967?v=3","gravatar_id":"","url":"https://api.github.com/users/greglittlefield-wf","html_url":"https://github.com/greglittlefield-wf","followers_url":"https://api.github.com/users/greglittlefield-wf/followers","following_url":"https://api.github.com/users/greglittlefield-wf/following{/other_user}","gists_url":"https://api.github.com/users/greglittlefield-wf/gists{/gist_id}","starred_url":"https://api.github.com/users/greglittlefield-wf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/greglittlefield-wf/subscriptions","organizations_url":"https://api.github.com/users/greglittlefield-wf/orgs","repos_url":"https://api.github.com/users/greglittlefield-wf/repos","events_url":"https://api.github.com/users/greglittlefield-wf/events{/privacy}","received_events_url":"https://api.github.com/users/greglittlefield-wf/received_events","type":"User","site_admin":false},"created_at":"2016-03-31T17:29:19Z","updated_at":"2016-03-31T17:29:19Z","body":"@aaronlademann-wf Didn't think of that; yup, it does! This issue can be closed when that merges."}}