Ինչպես քարտեզագրել Nested Array-ը React բաղադրիչում
Իմացեք, թե ինչպես լուծել ներկառուցված զանգվածի օբյեկտը՝ օգտագործելով JavaScript-ի քարտեզի գործառույթը:
Ժամանակակից հավելվածների մեծ մասը API-ների միջոցով օգտագործում է արտաքին տվյալներ այլ հավելվածներից և գործիքներից: Այս տվյալները ներկայացված են բոլոր տեսակի սխեմաներով, և դա ձեզնից է կախված՝ ապակառուցեք դրանք, մինչև ստանաք այն, ինչ ցանկանում եք օգտագործել: Այս սխեմաների թվում են տվյալների օբյեկտները, որոնք պարունակում են ներդիր զանգվածներ: Այս տեսակի տվյալների մատուցումը կարող է դժվար լինել: Այս հոդվածը կսովորեցնի ձեզ, թե ինչպես պետք է քարտեզագրել React բաղադրիչի մեջ տեղադրված զանգվածը:
Օգտագործելով քարտեզի գործառույթը
Քարտեզի ֆունկցիան պտտվում է տվյալ զանգվածի տարրերի վրա և վերադարձնում յուրաքանչյուրի համար նշված հայտարարությունը կամ կոդը:
Հարթ զանգվածի համար քարտեզի ֆունկցիան աշխատում է հետևյալ կերպ.
const arr = ['a', 'b', 'c'];
const result1 = arr.map(element => {
return element;
});
React-ում դուք պետք է փաթաթեք քարտեզի գործառույթը գանգուր փակագծերով և օգտագործեք սլաքների ֆունկցիան՝ յուրաքանչյուր կրկնության համար հանգույցի տարր վերադարձնելու համար: Վերևում գտնվող հարթ զանգվածի տարրերը կարող են ներկայացվել որպես JSX տարրեր հետևյալ կերպ.
const arr = ['a', 'b', 'c'];
function App () {
return (
<>
{arr.map((item, index) => {
<span key={index}>{a}</span>
})}
</>
)
}
Նկատի ունեցեք, որ քարտեզի գործառույթը վերադարձնող յուրաքանչյուր տարրի բանալին եք հատկացնում: Սա օգնում է React-ին բացահայտել այն տարրերը, որոնք փոխվել կամ հեռացվել են: Սա կարևոր է հաշտեցման գործընթացում:
Քարտեզագրում Nested Array-ի վրա React բաղադրիչում
Ներդրված զանգվածը նման է զանգվածին, որը պարունակում է մեկ այլ զանգված: Օրինակ, հետևյալ բաղադրատոմսերի զանգվածը պարունակում է զանգվածով առարկա։
const recipes = [
{
id: 716429,
title: "Pasta with Garlic, Scallions, Cauliflower & Breadcrumbs",
image: "<https://spoonacular.com/recipeImages/716429-312x231.jpg>",
dishTypes: [
"lunch",
"main course",
"main dish",
"dinner"
],
recipe: {
// recipe data
}
}
]
Ներդրված զանգվածներով նման տվյալների համար դուք պետք է օգտագործեք քարտեզի ֆունկցիա յուրաքանչյուր զանգվածի համար:
Այս օրինակում դուք պետք է քարտեզագրեք տվյալների զանգվածի վրա, ինչպես ցույց է տրված ստորև.
export default function Recipes() {
return (
<div>
{recipes.map((recipe) => {
return <div key={recipe.id}>
<h1>{recipe.title}</h1>
<img src={recipe.image} alt="recipe image" />
{recipe.dishTypes.map((type, index) => {
return <span key={index}>{type}</span>
})}
</div>
})}
</div>
)
}
Recipes բաղադրիչը կարտացոլի div տարրը, որը պարունակում է բաղադրատոմսերի տվյալներ բաղադրատոմսերի զանգվածի յուրաքանչյուր բաղադրատոմսի համար:
JavaScript-ում զանգվածների հետ աշխատելը
JavaScript-ն առաջարկում է զանգվածային մեթոդների լայն տեսականի, որոնք հեշտացնում են զանգվածների հետ աշխատանքը: Այս հոդվածը ցույց տվեց, թե ինչպես կարելի է տվյալների արտապատկերում ներդիր զանգվածից՝ օգտագործելով քարտեզի զանգվածի մեթոդը: Բացի քարտեզից, կան նաև մեթոդներ, որոնք կօգնեն ձեզ տվյալները մղել զանգվածին, միացնել երկու զանգված կամ նույնիսկ տեսակավորել զանգվածը: