From 895d22728302a718cc2283031451e3e78a5e6c4a Mon Sep 17 00:00:00 2001 From: vwkd <33468089+vwkd@users.noreply.github.com> Date: Wed, 18 Nov 2020 15:25:35 +0100 Subject: [PATCH] clarify a bit more --- site/content/tutorial/04-logic/05-keyed-each-blocks/text.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/content/tutorial/04-logic/05-keyed-each-blocks/text.md b/site/content/tutorial/04-logic/05-keyed-each-blocks/text.md index 6de435091d..a2eb0f463a 100644 --- a/site/content/tutorial/04-logic/05-keyed-each-blocks/text.md +++ b/site/content/tutorial/04-logic/05-keyed-each-blocks/text.md @@ -2,9 +2,9 @@ title: Keyed each blocks --- -By default, when you add an element to the array that the `each` block iterates over, it will add an item at the *end* of the block instead of at the same position as the element's index. This means that if you add an element to the array anywhere other than at the end, this leads to each item corresponding to a different element of the array than the one it was first created for. The same goes for removing an element. That might not be what you want. +By default, when you add an element to the array that the `each` block iterates over, it will add an item at the *end* of the block instead of at the same position as the element's index, and update the attributes of the existing items. This means that if you add an element to the array anywhere other than at the end, this leads to each item corresponding to a different element of the array than the one it was first created for. The same goes for removing an element from the array. That might not be what you want. -It's easier to understand with an example. For each element of the array, #each creates one `` component which you can see as rows. The initial value shows to which element of the array the component instance corresponded when it was created, while the current value shows which element of the current array it corresponds to now. The expected behavior would be that both values match. +It's easier to understand with an example. For each element of the array, #each creates one `` component which you can see as rows. The initial value corresponds to the element of the original array for which the component was created, while the current value shows the element of the current array it corresponds to now. The expected behavior would be that both values match. Click the 'Remove first element' button a few times, and notice that it's removing `` components from the end, and updating the prop for those that remain. Instead, we'd like to remove the first `` component and leave the rest unaffected.