За сваки
У ЛВЦ-у, фор:еацх је директива која се користи са ознаком шаблона. Враћа ставке из датих података. Потребна су два параметра. Морамо навести податке у фор:еацх={подаци} и фор:итем=”променљива” узима тренутну ставку (из итератора) која је наведена са променљивом. Тхе фор:индек=”индек_вар” складишти индекс елемента који специфицира тренутни индекс елемента.
Синтакса:
Хајде да видимо како да наведемо директиву фор:еацх у ЛВЦ-у (ХТМЛ компонента). Фор:индекс је опциони.
<темплате фор:еацх={дата} фор:итем= 'итем_вар' фор:индек= 'индекс_где' >
'1.0' ?>
<ЛигхтнингЦомпонентБундле кмлнс= '0Ц009191Д3334Ф5137Ц1ФЕ8294Б8ДДФ7Ц3ЕБ0ФЕ9' >
<апиВерсион> 57.0 апиВерсион>
<исЕкпосед>труеисЕкпосед>
<циљеви>
<таргет>лигхтнинг__РецордПагетаргет>
<таргет>лигхтнинг__АппПагетаргет>
<таргет>лигхтнинг__ХомеПагетаргет>
таргетс>
ЛигхтнингЦомпонентБундле>
2. У свим примерима о којима ћемо расправљати у овом водичу, логика ће бити дата као „јс“ код. Након тога наводимо снимак екрана који укључује цео „јс“ код.
Пример 1:
Хајде да направимо листу која садржи 10 субјеката у датотеци „фирстЦомпонент.јс“. Користите директиву фор:еацх шаблона и поновите ову листу помоћу итератора „суб“. Наведите кључ као овај итератор унутар ознаке пасуса и прикажите теме.
фирстЕкампле.хтмл<темплате>
<лигхтнинг-цард титле= „Низ субјеката“ >
<центар>
<темплате фор:еацх={субјецтс_арраи} фор:итем= 'под' фор:индек= 'индекс' >
<п кеи={суб}> {суб}п>
темплате>
центер>
лигхтнинг-цард>
темплате>
фирстЕкампле.јс
// Креирај предмет_низ који држи 10 предмета
предмети_низ = [ 'АВС' , 'Салесфорце' , 'ПХП' , 'Јава' , 'пајтон' , 'ХТМЛ' , 'ЈС' , 'Јава' , 'Орацле' , 'Ц#' ];
Цео код:
Излаз:
Додајте ову компоненту на страницу „Снимање“ било ког објекта (додамо је на страницу „Снимање“ налога). Свих 10 елемената је приказано на корисничком интерфејсу.
Пример 2:
Сада креирамо низ објеката који је 'ид', програм и куцамо са 10 записа који се односе на субјекте. Они се понављају да би се добио програм и тип. Кључ је „ид“, а вредности типа су приказане подебљано.
сецондЕкампле.хтмл<темплате>
<лигхтнинг-цард титле= 'Низ предмета' >
<центар>
<темплате фор:еацх={арраи_оф_објецтс} фор:итем= 'обј' фор:индек= 'индекс' >
<п кеи={обј.ид}> {обј.програм} - <б>{обј.типе}б>п>
темплате>
центер>
лигхтнинг-цард>
темплате>
сецондЕкампле.јс
// Креирај низ_објеката који садржи детаље о 10 предмета
низ_објеката = [{ид: 1 ,програм: 'АВС' , тип: 'облак' },{ид: 2 ,програм: 'Салесфорце' , тип: 'облак' },
{ид: 3 ,програм: 'ПХП' , тип: 'веб' },{ид: 4 ,програм: 'Јава' , тип: „Веб/Подаци“ },
{ид: 5 ,програм: 'пајтон' , тип: 'Све' },{ид: 6 ,програм: 'ХТМЛ' , тип: 'веб' },
{ид: 7 ,програм: 'ЈС' , тип: 'веб' },{ид: 8 ,програм: '.НЕТ' , тип: „Веб/Подаци“ },
{ид: 9 ,програм: 'Орацле' , тип: 'Подаци' },{ид: 10 ,програм: 'Ц#' , тип: 'Подаци' }];
Цео код:
Излаз:
Можете видети да су сви програми приказани на корисничком интерфејсу заједно са њиховим типовима.
Пример 3:
Креирајте угнежђени низ објеката (ид, програм, тип и теме). Овде ће теме поново имати листу елемената. У првој директиви фор:еацх шаблона понављамо цео угнежђени низ. Унутар овог шаблона, поново понављамо теме користећи претходни итератор. Затим приказујемо програм, тип и теме у главном за:сваки шаблон.
тхирдЦомпонент.хтмл<темплате>
<лигхтнинг-цард титле= 'Низ предмета' >
<центар>
<темплате фор:еацх={дата} фор:итем= 'вал' фор:индек= 'индекс' >
<темплате фор:еацх={вал.Топицс} фор:итем= 'вал1' >
темплате>
<п кеи={вал.ид}> <б>ПРОГРАМ: б> &нбсп;{вал.програм} &нбсп; - {вал.типе} <б>ТЕМЕ: б>&нбсп; {вал.Топицс}п>
темплате>
центер>
лигхтнинг-цард>
темплате>
тхирдЦомпонент.јс
подаци = [{ид: 1 ,програм: 'АВС' , тип: 'облак' , Теме:[ 'Увод' , „АВЦ основе“ ]},
{ид: 2 ,програм: 'Салесфорце' , тип: 'облак' , Теме:[ 'Админ' , 'Развој' ]},
{ид: 3 ,програм: 'ПХП' , тип: 'веб' , Теме:[ 'Увод' , 'ПХП-МиСКЛ' ]}];
Цео код:
Излаз:
Сви предмети су приказани са својим типом и темама. Сваки предмет има две теме.
Пример 4:
Хајде да поновимо записе који су присутни у објекту „Аццоунт“. Прво, напишите Апек класу која враћа листу записа (ретурнАцц() – метода) која укључује поља ИД налога, Име, Индустрија и Оцена из објекта Стандард налога. У датотеци „јс“ позивамо метод ретурнАцц() из Апек-а (преко наредбе импорт) унутар цоннецтцаллбацк(). Ово враћа рачуне. Коначно, ови налози су наведени у директиви фор:еацх шаблона да би добили назив налога и делатност.
АццоунтДата.апкцјавно са дељењем класе АццоунтДата {
@АураЕнаблед(цацхеабле=труе)
јавна статичка листа<Аццоунт> ретурнАцц(){
Листа<Аццоунт> аццоунтЛист = [ИЗАБИР ИД, назив, индустрија, оцена ИЗ ограничења налога 10 ];
ретурн аццоунтЛист;
}
}
финалЦомпонент.хтмл
<темплате>
<лигхтнинг-цард титле= „Прикажи листу налога“ >
<див цласс= 'слдс-вар-м-ароунд_медиум' >
<темплате иф:труе={аццоунтс}>
<темплате фор:еацх={аццоунтс} фор:итем= 'аццоунт_рец' >
<п кеи={аццоунт_рец.Ид}><б>Налог:б> {аццоунт_рец.Наме} &нбсп; &нбсп;<б>Индустрија:б> {аццоунт_рец.Индустри}п>
темплате>
темплате>
див>
лигхтнинг-цард>
темплате>
финалЦомпонент.јс
импорт { ЛигхтнингЕлемент,трацк } из 'срећа' ;
импорт ретурнАцц из '@салесфорце/апек/АццоунтДата.ретурнАцц' ;
извоз подразумеване класе ФиналЦомпонент ектендс ЛигхтнингЕлемент {
@трацк аццоунтс;
@трацк еррор;
повезанПовратни позив(){
ретурнАцц()
// Врати рачуне
.тхен(ресулт => {
тхис.аццоунтс = резултат;
тхис.еррор = недефинисано;
})
.цатцх(еррор => {
тхис.еррор = грешка;
тхис.аццоунтс = недефинисано;
});
}
}
Излаз:
Само 10 налога је приказано са пољима Име и Индустрија.
Закључак
Разговарали смо о директиви фор:еацх шаблона која се користи за враћање ставки из датих података. Наведена су четири различита примера који укључују листу, низ објеката, угнежђене објекте и Салесфорце објекте. Подаци морају доћи из „јс“ датотеке и користити их у фор:еацх шаблону. Уверите се да морате прво да примените Апек класу док примењујете последње компоненте примера.