I am using following snippet for providing index as a key.
[{},{},{}].map((item,index) => <li key={index}/>)
I am using following snippet for providing index as a key.
[{},{},{}].map((item,index) => <li key={index}/>)
Of course, in React, you are required to pass in a unique key value for all elements of an array. Else, you will see this warning in console.
Warning: Each child in an array or iterator should have a unique “key” prop.
So, as a lazy developer, you would simply pass in the loop’s index value as the key value of the child element.
Reordering a list, or adding and removing items from a list can cause issues with the component state, when indexes are used as keys. If the key is an index, reordering an item changes it. Hence, the component state can get mixed up and may use the old key for a different component instance.
What are some exceptions where it is safe to use index as key?
Key should be unique but only among its siblings.