{"action":"created","issue":{"url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/5","repository_url":"https://api.github.com/repos/simona1/Restaurant-Hopping","labels_url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/5/comments","events_url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/5/events","html_url":"https://github.com/simona1/Restaurant-Hopping/issues/5","id":312663806,"number":5,"title":"key error","user":{"login":"darin-invitae","id":38225979,"avatar_url":"https://avatars0.githubusercontent.com/u/38225979?v=4","gravatar_id":"","url":"https://api.github.com/users/darin-invitae","html_url":"https://github.com/darin-invitae","followers_url":"https://api.github.com/users/darin-invitae/followers","following_url":"https://api.github.com/users/darin-invitae/following{/other_user}","gists_url":"https://api.github.com/users/darin-invitae/gists{/gist_id}","starred_url":"https://api.github.com/users/darin-invitae/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/darin-invitae/subscriptions","organizations_url":"https://api.github.com/users/darin-invitae/orgs","repos_url":"https://api.github.com/users/darin-invitae/repos","events_url":"https://api.github.com/users/darin-invitae/events{/privacy}","received_events_url":"https://api.github.com/users/darin-invitae/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-04-09T19:52:19Z","updated_at":"2018-04-10T04:35:43Z","closed_at":null,"author_association":"NONE","body":"The `key` attribute here is based on the passed in `place.id`.  This means that each child has identical keys when they should be unique.  This leads to inefficient rendering in React and could be the source of hard-to-find glitches as app complexity grows.\r\n\r\nhttps://github.com/simona1/Restaurant-Hopping/blob/7f0fb435afb8dee1d856edf145c8845ccb9014d3/src/client/PlacesList.js#L29"},"comment":{"url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/comments/379971046","html_url":"https://github.com/simona1/Restaurant-Hopping/issues/5#issuecomment-379971046","issue_url":"https://api.github.com/repos/simona1/Restaurant-Hopping/issues/5","id":379971046,"user":{"login":"simona1","id":7232251,"avatar_url":"https://avatars3.githubusercontent.com/u/7232251?v=4","gravatar_id":"","url":"https://api.github.com/users/simona1","html_url":"https://github.com/simona1","followers_url":"https://api.github.com/users/simona1/followers","following_url":"https://api.github.com/users/simona1/following{/other_user}","gists_url":"https://api.github.com/users/simona1/gists{/gist_id}","starred_url":"https://api.github.com/users/simona1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simona1/subscriptions","organizations_url":"https://api.github.com/users/simona1/orgs","repos_url":"https://api.github.com/users/simona1/repos","events_url":"https://api.github.com/users/simona1/events{/privacy}","received_events_url":"https://api.github.com/users/simona1/received_events","type":"User","site_admin":false},"created_at":"2018-04-10T04:35:43Z","updated_at":"2018-04-10T04:35:43Z","author_association":"OWNER","body":"I agree. The key error was associated with the star `materialize-icon`, `<i>` used to represent the ranking. I debated using the Lodash `uniqueId` function to generate a unique hash for these, but that would also mean that they'd be re-rendered. \r\nAs to the `<li>` elements, each `place-id` is unique based on google-maps-api  documentation\r\nhttps://developers.google.com/places/place-id\r\nso these respect React best practices.\r\n"}}
{"actor":{"display_login":"simona1"}}