Делите путем


Преглед компоненти подлоге

Напомена

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

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

Погледајте овај видео запис да бисте сазнали како да користите компоненте у апликацијама са подлогом:

Компоненте у апликацијама са подлогом

Можете да креирате компоненту из неке апликације, као што је објашњено у овом чланку, или креирањем нове компоненте унутар библиотеке компоненти. Библиотека компоненти треба да се користи за захтеве да се компоненте користе на више екрана апликација. Такође можете копирати постојеће компоненте у постојећу или нову библиотеку компоненти.

Да бисте креирали компоненту у апликацији, идите на Приказ стабла, изаберите Компоненте, а затим изаберите Нова компонента:

Креирајте нову прилагођену компоненту користећи приказ стабла.

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

Након што одаберете екран, компоненту можете да изаберете са листе постојећих компоненти у левом окну. Када изаберете компоненту, уметните инстанцу те компоненте на екран, баш као што уметнете контролу.

Компоненте доступне унутар апликације наведене су у категорији Прилагођено у листи компоненти у приказу стабла. Компоненте увезене из библиотека компоненти наведене су под категоријом Компоненте библиотеке:

Уметните компоненте у апликацију.

Напомена

Компоненти о којима се говори у овом чланку разликују се од платформе Power Apps component framework за компоненте, која омогућава програмерима и ауторима да креирају компоненте кода за апликације засноване на подлози и моделу. За више информација, посетите Power Apps преглед радног оквира за компоненте.

Прилагођена својства

Компонента може примати улазне вредности и емитовати податке ако креирате једно или више прилагођених својстава. Ти сценарији су напредни и захтевају да разумете формуле и обавезујуће уговоре.

Напомена

Експериментална функција за побољшана својства компоненти пружа још више опција за својства, укључујући функције и функције понашања. Више информација потражите у чланку Својства компоненте подлоге за цртање (експериментално)

Својство уноса је начин како компонента прима податке који ће се користити у компоненти. Својства уноса се приказују на картици Својства десног окна ако је одабрана инстанца компоненте. Можете конфигурисати улазна својства с изразима или формулама, баш као што конфигуришете стандардна својства у другим контролама. Остале контроле имају својства уноса, као што је својство Default контроле унос текста.

Својство излаза се користи за емитовање података или статус компоненте. На пример, својство Selected у контроли галерија је својство излаза. Када креирате својство излаза, можете одредити које друге контроле се могу односити на статус компоненте.

Следећи пролазак даље објашњава ове концепте.

Креирање примера библиотеке компоненти

У овом примеру, креираћете компоненту менија која подсећа на следећу графику. А можете касније да промените текст да бисте га користили на више екрана, апликација или у обе сврхе:

Коначна галерија.

Напомена

Препоручујемо да користите библиотеку компоненти када креирате компоненте за поновну употребу. Ажурирање компоненти унутар апликације чини ажурирања компоненте доступним само унутар апликације. Када користите библиотеку компоненти, од вас ће се затражити да ажурирате компоненте ако су компоненте унутар библиотеке ажуриране и објављене.

Креирање нове компоненте

  1. Креирајте празну апликацију са подлогом.

  2. Да бисте креирали компоненту, идите на Приказ стабла, изаберите Компоненте, а затим изаберите Нова компонента:

    Креирајте нову прилагођену компоненту користећи приказ стабла.

  3. Изаберите нову компоненту у левом окну, одаберите три тачке (...), а затим изаберите Преименуј. Унесите или налепите име као MenuComponent.

  4. У десном окну подесите ширину компоненте као 150 и његову висину као 250, а затим изаберите Ново прилагођено својство. Такође можете подесити висину и ширину било које друге вредности, према потреби.

    Ново својство.

  5. У пољима Display name, Property name и Опис, унесите или налепите текст као Items.

    Име за приказ, назив својства, поља за опис.

    Не укључујте размаке у називу својства, јер ћете се на те компоненте позивати по називу када будете писали формулу. На пример, ComponentName.PropertyName.

    Име за приказ се појављује на картици Својства десног окна ако изаберете компоненту. Описно име за приказ помаже вама и другим ауторима да схватите сврху овог својства. Опис ће се појавити у опису ако задржите показивач миша над именом за приказ овог својства на картици Својства.

  6. У листи Тип података изаберите Табела, а затим изаберите Креирај.

    Тип података својства.

    Својство Items је постављено на подразумевану вредност на основу типа података који сте навели. Можете га поставити на вредност која одговара вашим потребама. Ако сте навели тип података Табела или Запис, можда би требало да промените вредност својства Items да одговара шеми података коју желите да унесете у компоненту. У том случају ћете га променити у листу ниски.

    Вредност својства можете поставити у траци за формуле ако одаберете назив својства на картици Својства у десном окну.

    Прилагођена особина уноса на картици Својства.

    Као што приказује следећа слика, такође можете да уредите вредност својства на картици Напредно десног окна.

  7. Подесите својство слике Items према овој формули:

    Table({Item:"SampleText"})
    

    Формула.

  8. У компоненти уметните празну усправну контролу галерија и изаберите Layout у окну својстава као Наслов.

  9. Обавезно проверите да ли на листи својстава приказује својство Items (као што то подразумевано ради). Затим поставите вредност тог својства на овај израз:

    MenuComponent.Items
    

    На овај начин, својство Items контроле галерија очитава улазно својство компоненте Items и зависи од њега.

  10. Опционално – подесите својство BorderThickness контроле галерија на 1, а његово својство TemplateSize на 50. Такође можете ажурирати вредности за дебљину ивице и величину предлошка на било коју другу вредност, према потреби.

Додавање компоненте на екран

Затим ћете компоненту додати на екран и одредити табелу ниски за компоненту која ће се приказивати.

  1. У левом окну изаберите листу екрана, а затим изаберите подразумевани екран.

    Подразумевани екран.

  2. На картици Уметање отворите мени Компоненте, а затим изаберите MenuComponent.

    Уметање компоненте.

    Нова компонента је подразумевано именована MenuComponent_1.

  3. Подесите својство Items контроле MenuComponent_1 на ову формулу:

    Table({Item:"Home"}, {Item:"Admin"}, {Item:"About"}, {Item:"Help"})
    

    Ова инстанца личи на овај графички приказ, али можете прилагодити текст и остала својства сваке инстанце.

    Коначна галерија.

Креирање и коришћење својства излаза

До сада сте направили компоненту и додали је у апликацију. Затим ћете креирати својство излаза које одражава ставку коју корисник изабере у менију.

  1. Отворите листу компоненти, а затим изаберите MenuComponent.

  2. У десном окну изаберите картицу Својства, а затим изаберите Ново прилагођено својство.

  3. У пољима Име за приказ, Назив својства и Опис, унесите или налепите Selected.

  4. У одељку Тип својства, одаберите Излаз, а затим изаберите Креирај.

    Тип својства као излаз.

  5. На картици Напредно, подесите вредност својства Изабрано на овај израз, прилагођавајући број у називу галерије, ако је потребно:

    Gallery1.Selected.Item
    

    Окно „Напредно“.

  6. На подразумеваном екрану апликације, додајте ознаку и подесите њено својство Text на овај израз, прилагођавајући број у имену компоненте, ако је потребно:

    MenuComponent_1.Selected
    

    MenuComponent_1 је подразумевано име инстанце, а не име дефиниције компоненте. Можете преименовати било коју инстанцу.

  7. Док држите притиснут тастер Alt, изаберите сваку ставку у менију.

    Контрола ознака одражава ставку менија коју сте одабрали недавно.

Scope

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

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

Прекидач Приступ опсегу апликације у окну својстава компоненте

Када је укључена опција Приступ опсегу апликације, из компоненте је могуће приступити следећем:

  • Глобалне променљиве
  • Колекције
  • Контроле и компоненте на екранима, попут контроле TextInput
  • Табеларни извори података, као што су Dataverse табеле

Када је ова поставка искључена, ниједна од горенаведених опција није доступна компоненти.  Функције " Постави " и"Прикупи" су и даље доступне, али су резултујуће променљиве и колекције опсезидне инстанцом компоненте и не деле се са апликацијом.

Извори података који нису табеларни, као што је Azure складиште блоб објекта или прилагођени конектор, доступни су без обзира да ли је ово подешавање укључено или искључено.Више размишљате о овим изворима података као о референцирању ресурса окружења, а не о ресурсу апликације.Када се компонента уне у апликацију из библиотеке компоненти, уносе се и ови извори података из окружења.

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

Напомена

  • Можете уметнути примерке компоненти у екран унутар библиотеке компоненти и прегледати тај екран у сврху тестирања.
  • Библиотека компоненти се не приказује када се користи Power Apps Mobile.

Увоз и извоз компоненти (повучено)

Напомена

Ова функција је повучена. Библиотеке компоненти су препоручени начин поновне употребе компоненти у апликацијама. Када користите библиотеку компоненти, апликација одржава зависности од компоненти које користи. Произвођач апликација биће упозорен када постану доступна ажурирања за зависне компоненте. Стога би све нове компоненте које се могу поново користити требало да буду креиране у библиотекама компонената.

Могућност увоза и извоза компоненти је подразумевано онемогућена јер је ова функција повучена. Иако је препоручена метода за рад са компонентама употреба библиотеке компоненти, још увек можете да омогућите ову функцију по апликацији као изузетак док се не уклони. Да бисте то урадили, уредите своју апликацију у услузи Power Apps Studio, а затим идите на Поставке > Предстојеће функције > Повучене > подесите Извоз и увоз компоненти на Укључено.

Омогућавање извоза и увоза компоненти.

Након што омогућите ову функцију, можете да користите следеће могућности за увоз и извоз компоненти.

Увоз компоненти из друге апликације

Да бисте увезли једну или више компоненти из једне апликације у другу, изаберите Увези компоненте из менија Уметање, а затим користите падајући мени Прилагођено. Или користите Компоненте у приказу стабла на левом окну.

У дијалогу су наведене све апликације које садрже компоненте за које имате дозволу за уређивање. Изаберите апликацију, а затим изаберите Увоз да увезете најновију објављену верзију свих компоненти у тој апликацији. Када увезете најмање једну компоненту, можете да измените копију и избришете све које вам нису потребне.

Дијалог за увоз компоненти.

Апликацију са постојећим компонентама можете сачувати у датотеци локално, а ту датотеку затим поново користити увозећи је. Можете користити датотеку за увоз компоненти у другу апликацију.

Ако апликација садржи модификовану верзију исте компоненте, од вас ће се тражити да одлучите да ли да замените модификовану верзију или откажете увоз.

Када креирате компоненте у апликацији, друге апликације могу користити компоненте из те апликације увозећи их.

Напомена

Ако је компонента коју сте увезли из друге апликације измењена у оригиналној апликацији, морате ручно поново да увезете компоненту у апликацију која је користи да би примила најновије промене компоненте. Уместо тога користите библиотеке компоненти да бисте ефикасније радили са исправкама компоненти.

Извоз компоненти из апликације

Можете извести компоненте у датотеку и преузети их за увоз у другу апликацију.

Изаберите опцију Извоз компоненти у одељку Компоненте у приказу стабла у левом окну:

Приказ стабла компоненти за извоз.

Такође можете да користите мени Уметање, а затим изаберите падајући мени Прилагођено.

Мени за уметање компоненти за увоз.

Избором опције Извоз компоненти преузећете компоненте у датотеку:

Преузимање компоненте.

Преузета датотека компоненти користи тип датотеке .msapp.

Увоз компоненти из датотеке извезених компоненти

Да бисте увезли компоненте из датотеке извезених компоненти, изаберите Увоз компоненти у било ком менију Уметни а затим користите падајући мени Прилагођено или користите Компоненте у приказу стабла у левом окну. У дијалогу са компонентама изаберите Отпреми датотеку уместо да изаберете било које друге компоненте или апликације:

Увоз датотеке компоненти.

У дијалогу Отвори потражите локацију датотеке компоненте и изаберите Отвори да увезете компоненте унутар апликације.

Увоз компоненти из извезене апликације

Апликацију можете локално да сачувате користећи опцију Датотека > Сачувај као:

Сачувајте апликацију.

Када сачувате апликацију, можете поново користити компоненте ове апликације користећи исти метод увоза компоненти из датотеке. Следите кораке из претходног одељка о увозу компоненти из датотеке извезених компоненти.

Позната ограничења

  • Својство прилагођеног уноса не може да се конфигурише на вредност својства прилагођеног излаза у истим или различитим инстанцама када имате две или више инстанци исте компоненте у апликацији. Ова радња ће резултирати поруком упозорења о кружној референци. Да бисте заобишли ово ограничење, можете да креирате копију компоненте унутар апликације.
  • Додавање и покретање Power Automate токова у библиотекама компоненти није подржано.
  • Не можете да сачувате изворе података или контроле које садрже податке из тих извора података (као што су обрасци, флуидне мреже или табеле података) са компонентама.
  • Не можете уметнути компоненту у галерију или образац (укључујући SharePoint образац).
  • Компоненте не подржавају функцију UpdateContext, али можете да креирате и ажурирате променљиве у компоненти користећи функцију Set. Опсег ових променљивих је ограничен на компоненту, али можете им приступити изван компоненте преко прилагођених својстава излаза.

Следећи кораци

Сазнајте како се користи библиотека компоненти да бисте креирали складиште компоненти за вишекратну употребу.

Погледајте и

Напомена

Можете ли нам рећи о својим жељеним поставкама језика у документацији? Испуните кратку анкету. (имајте на уму да је ова анкета на енглеском језику)

Анкета ће трајати око седам минута. Не прикупљају се лични подаци (изјава о приватности).