Разумевање везивања података у Кноцкоут.јс

Преглед садржаја
Подаци везивања то није ништа друго до унија динамичких података било текста или ХТМЛ -а у различитим деловима стабла СУНЦЕ нашег документа у којем Кноцкоут.јс ради, то нам омогућава да генеришемо динамички садржај из приказа и модела.
Овај концепт се може наћи у великом броју развојних оквира за ЈаваСцрипт будући да је то врло ефикасан начин за изражавање развојне логике, па је од виталног значаја да разумемо како то функционише и како нам може олакшати живот при изради наших апликација.
ЗахтевиГлавни услов је способност извршавања Кноцкоут.јс да ли смо га преузели или укључили из ЦДН. Такође ће нам требати сервер сервера Апацхе да служи нашој страници и уређивачу текста попут Узвишени текст или НотеПад ++ за креирање докумената које ће наше апликације носити.
Најбољи начин да видите Подаци везивања је са примером, да видимо у следећем коду како смо креирали документ ХТМЛ где укључујемо Кноцкоут.јс, тада смо у свом телу створили ознаку Х1 у њој правимо а везати за податке оф ХТМЛ, то значи да чека ХТМЛ код.
У делу ЈаваСцрипт једноставно оно што смо урадили је стварање а поглед-модел и у њему дефинишу неке атрибуте да би могли да раде са њим. Занимљиво је да нам то омогућава пренос података са нашег поглед-модел на део ХТМЛ -а. Да видимо како изгледа наш код:
 Повезивање података у кноцкоут.јс 
Приликом позивања нашег документа из нашег прегледача добијамо следећи резултат:

Овде видимо како смо изградили методу која враћа име и мало ХТМЛ да бисмо му дали стил, то значи да можемо имати бесконачан распон могућности, али можда се највише истиче то што можемо применити Подаци везивања скоро на било коју ставку. Тако можемо послати текст, ХТМЛ итд.
Али не само да нам омогућава штампање текста кориснику, већ такође можемо укључити ЦСС, класе и атрибуте у наше ознаке ХТМЛ, омогућавајући нам да контролишемо готово сваки аспект наше странице без потребе за постављањем статичких вредности.
Погледајмо у следећем примеру како дајемо посебну класу ознаци ХТМЛ, идеја је да можемо генерирати динамичке стилове без потребе за интервенцијом када имамо апликацију која тражи фонт РЕСТ, међутим у овом случају ради поједностављења учитаћемо само једну компоненту динамички:
 Повезивање података у кноцкоут.јс 

Тада примећујемо како можемо да пренесемо компоненту стил који ће дефинисати изглед текста, могли бисмо додати и класу и на крају свој текст позовемо из модела, такође примећујемо да све ово радимо у истом Подаци везивања, само одвајајући различите елементе зарезима.
Ако покренемо наш нови пример, резултат у нашем прегледачу је следећи:

ЕНЛАРГЕ

Обратимо посебну пажњу на део дебагер оф ХТМЛ прегледача, овде видимо где су елементи Подаци везивања ефективно су пренети на етикету.
Постоје и друге функције које можемо користити са Подаци везивања, један од њих су кондиционали, то јест, можемо ставити један или други елемент унутар наших ознака ХТМЛ узимајући у обзир различита својства нашег модела. Погледајмо следећи код где користимо пример овог стила:
 Условно везивање података 

У нашем приказу модела дефинисали смо атрибут зван ид који смо поставили на 0, а затим у нашем ХТМЛ у одељку од везивање података Дефинирали смо тројни оператер, гдје специфицирамо ако је ИД приказа модела 0, он исписује 'Хелло', у супротном исписује 'Гоодбие'.
Покренимо пример у прегледачу да видимо његов резултат:

Занимљива вежба би била ако можете да промените ид на другу вредност да бисте потврдили операцију, зато га остављамо као задатак.
Нешто веома важно што морамо узети у обзир је контекст наших елемената, то је зато што Кноцкоут.јс користи хијерархијску структуру Отац син за руковање различитим својствима која добијамо из приказа модела.
То значи да увек радимо на основу родитеља и на тај начин можемо приступити његовим својствима, генеришући на тај начин својства детета која се разликују од друге деце која су на истом нивоу, чиме можемо да укључимо различите вредности.
Како је све релативно у односу на контекст, видимо да бисмо у претходним примерима могли да користимо текст за повезивање података без потребе да назначите коме припада, од када се то догоди, Кноцкоут.јс одмах претпоставља контекст садашњег детета. Погледајмо у наставку различите врсте контекста које можемо обрадити у нашој апликацији:
$ роотТо је главни контекст, одакле потиче наш поглед на модел, када се позове из било ког дела наше апликације, увек ће тражити хијерархијски однос са највишим приоритетом у нашој структури, посебан је по томе што имамо много деце и желимо нешто од старијег родитеља.
$ парентРади слично као $ роот, с том разликом што се односи само на непосредног родитеља нашег елемента, па је његов опсег ограничен на то, широко се користи када радимо са циклусима за сваки да роди много деце.
$ родитељиДодавање множине у овај контекст говори нам да градимо неку врсту аранжмана или низа који садржи индекс за сваког од родитеља детета одакле га зовемо, овако $ родитељи [0] је непосредни отац, $ родитељи [1] је родитељ непосредног родитеља и тако даље.
$ датаОмогућава нам приступ подацима контекста у којем смо позиционирани, обично се користи када радимо са садржајем који је променљив и морамо приступити својствима приказа модела.
$ индекДоступан је само када радимо са петљама за сваки и омогућава нам приступ различитим положајима нашег елемента.
Када морамо да поновимо низ елемената, то је тренутак када морамо да користимо петљу за сваки, ово ће проћи кроз низ или листу елемената и на овај начин можемо саставити нашу листу у документу ХТМЛ.
У следећем примеру имаћемо својство које се зове књиге у нашем приказу модела, а затим ћемо га прећи помоћу за сваки користећи једну од променљивих контекста, у овом случају $ дата, Хајде да видимо:
 Повезивање података унапред
Ако видимо резултат претраживача, приметићемо операцију која се дешава узимајући у обзир све концепте које смо научили током водича.

Овим смо завршили овај водич, научили смо и имали дубљи контакт са Кноцкоут.јс, важно је разумети на веома дубок и чврст начин концепте онога што је Подаци везивања, већ је начин на који ћемо користити податке, атрибуте и својства приказа наших модела. Такође смо могли да разумемо веома важан концепт као што је контекст, сада можемо да разумемо како се различити елементи разликују и зашто Кноцкоут.јс зна када треба да добије неке податке преко других, и то зато што увек зна контекст наших елемената.
wave wave wave wave wave