Sdílet prostřednictvím


Zpracování událostí

Tip

Experimentujte s rozhraními API v reálném čase pomocí vlastní sestavy nebo naší ukázkové sestavy v části Sandbox pro vývojářev Power BI Embedded Analytics Playground.

Události se používají ke komunikaci mezi komponentou Power BI (například sestavou) a kódem webové aplikace.

Vložená komponenta generuje události po provedení akce uvnitř komponenty. Může to být interakce uživatelů nebo automatizovaná akce (například vykreslený vizuál) v rámci komponenty.

Jedná se buttonClicked například o událost vygenerovanou sestavou Power BI, když uživatel v sestavě klikne na tlačítko. Událost můžete naslouchat pomocí příkazu report.on(...)a pak nastavit obslužnou rutinu události.

Příklad zpracování události

Tento příklad ukazuje, jak zpracovat událost sestavy. Další informace o dalších typech událostí najdete v tématu Události a jejich hodnoty odpovědí.

Poznámka

Před použitím rozhraní API počkejte, až se komponenta načte. Naslouchejte načtené události a pak vydejte nové příkazy.

report.on('loaded', function(event)
{
    reportPages = await report.getPages();
});

Odebrání obslužných rutin událostí

Pomocí příkazu můžete report.off(...) odebrat všechny obslužné rutiny událostí pro konkrétní událost.

Události a jejich hodnoty odpovědí

Zobrazte úplný seznam možných událostí a jejich hodnot odpovědí.

Chybové události (relevantní pro všechna vložení)

Vygeneruje se chybová událost, která popisuje neúspěšnou operaci.

interface IError {
    message: string // A general message that describes the operation that failed (example: "Could not set page")
    detailedMessage?: string // Detailed message that describes the error
    errorCode?: string  //  Short message that describes the error
    level?: TraceType // The level of the error (example: 'Fatal')
    technicalDetails?: ITechnicalDetails
}

interface ITechnicalDetails {
    requestId?: string // Id for debugging - should be provided when reporting a bug
}

Poznámka

Vyžaduje se message pouze vlastnost a ostatní vlastnosti můžou být nedefinované.

Hlášení událostí

Událost sestavy se vygeneruje pro interakci s vloženou sestavou, jako je kliknutí na tlačítko sestavy nebo vykreslení vizuálu.

buttonClicked

Událost buttonClicked se vyvolá, když uživatel klikne na tlačítko Sestava .

 id: string
 title?: string
 type?: string (type of button)
 bookmark?: string

commandTriggered

Událost commandTriggered je vyvolána, když uživatel klikne na příkaz rozšíření.

 command: string
 dataPoints?: IIdentityValue[]
 report: models.IReport
 page: models.IPage
 visual: models.IVisual

dataHyperlinkClicked

Událost dataHyperlinkClicked je vyvolána při kliknutí na hypertextový odkaz a chování hypertextového odkazu je nastaveno na NavigateAndRaiseEvent nebo RaiseEvent.

 url: string
 report: models.IReport
 page: models.IPage
 visual: models.IVisual

Další informace najdete v tématu Konfigurace nastavení sestavy.

dataVybrané

Událost dataSelected je vyvolána, když je vybrán konkrétní datový bod.

 report: models.IReport
 page: models.IPage
 visual: models.IVisual
 filters: IFilter[]
 dataPoints: IIdentityValue[]

loaded

Událost loaded je vyvolána při inicializaci sestavy. Načítání se dokončí, když logo Power BI zmizí.

pageChanged

Událost pageChanged je vyvolána při každé změně stránky.

 newPage: Models.IPage

Vykreslen

Událost rendered je vyvolána při úplném vykreslení sestavy. Například pokud se všechny vizuály vykreslují při načtení sestavy nebo po interakci uživatele.

saveAsTriggered

Událost saveAsTriggered se vyvolá, když uživatel v uživatelském rozhraní klikne na Uložit jako . To vám umožní vytvořit vlastní dialogové okno pro akci Uložit jako .

Uloženy

Událost saved se vyvolá při aktivaci save uložení akcí nebo saveAs v uživatelském rozhraní nebo pomocí rozhraní API.

Selectionchanged

Událost selectionChanged se vyvolá pokaždé, když uživatel mění vybraný vizuál. selectedItems je seznam všech vybraných vizuálů, pokud je vybráno více než jeden.

 report: models.IReport
 page: models.IPage
 visual?: models.IVisual
 selectedItems?: models.IVisual[]

visualClicked

Událost visualClicked se vyvolá při každém kliknutí na vizuál.

 report: models.IReport
 page: models.IPage
 visual: models.IVisual

visualRendered

Událost visualRendered se vyvolá při vykreslení vizuálu (vyžaduje nastavení visualRenderedEvents na hodnotu true v objektu Settings).

Poznámka

Vzhledem k tomu, že se vizuály můžou vykreslovat kvůli interakci uživatelů, doporučujeme tuto událost zapnout jenom v případě potřeby.

 name: string

Další informace najdete v tématu Konfigurace nastavení sestavy.

Události vložení sestavy mobile

Událost Vložení sestavy Mobile se vysílá pro interakci s vloženou sestavou v mobilním rozložení, jako je začátek nebo konec potáhnutí prstem.

swipeStart a swipeEnd – události

swipeStart nebo swipeEnd události jsou vyvolány, když uživatel začne nebo ukončí pohyb potáhnutím prstem ve vložené sestavě.

interface ISwipeEvent {
    currentPosition: IPosition
    startPosition: IPosition
}

interface IPosition {
    x: number
    y: number
}

Události řídicího panelu

Událost řídicího panelu se vygeneruje při načtení řídicího panelu a když uživatel klikne na dlaždici na řídicím panelu.

loaded

Událost loaded se vyvolá při inicializaci řídicího panelu.

dlaždiceKliknutí na dlaždici

Událost tileClicked se vyvolá, když koncový uživatel klikne na dlaždici. Pro připnuté živé stránky se nezvolá.

 tileId: string
 navigationUrl: string
 pageName: string
 reportEmbedUrl: string

Události Q&A

Událost otázky a odpovědi (Q&A) se vyvolá při vykreslení vizuálu po zadání otázky.

visualRendered (Q&A)

Událost visualRendered se vyvolá, když se po zadání otázky vykreslí vizuál a zobrazí se odpověď.

 question: string
 normalizedQuestion: string

Události dlaždic

Dlaždice událost je vyvolána, když uživatel klikne na dlaždici.

tileClicked (událost dlaždice)

Událost tileClicked se vyvolá, když koncový uživatel klikne na dlaždici. Pro připnuté živé stránky se nezvolá.

 tileId: string
 navigationUrl: string
 pageName: string
 reportEmbedUrl: string

dlaždiceNačtené

Událost tileLoaded je vyvolána při inicializaci dlaždice. Načítání se dokončí, když logo Power BI zmizí.

Další kroky