Rozhranie API vizuálu

Všetky vizuály začínajú triedou, ktorá implementuje IVisual rozhranie . Triedu môžete pomenovať hocičo, pokiaľ existuje presne jedna trieda, ktorá implementuje IVisual rozhranie .

Poznámka

Názov triedy vizuálu musí byť rovnaký ako visualClassName v súbore pbiviz.json .

Trieda vizuálu by mala implementovať nasledujúce metódy, ako je to znázornené v nasledujúcej ukážke:

  • constructor – štandardný konštruktor, ktorý inicializuje stav vizuálu,
  • update – aktualizuje údaje vizuálu
  • getFormattingModel– vráti model formátovania, ktorý vyplní tablu vlastností (možnosti formátovania), kde môžete podľa potreby upraviť vlastnosti,
  • destroy – štandardný deštruktor na čistenie,
class MyVisual implements IVisual {
    
    constructor(options: VisualConstructorOptions) {
        //one time setup code goes here (called once)
    }
    
    public update(options: VisualUpdateOptions): void {
        //code to update your visual goes here (called on all view or data changes)
    }

    public getFormattingModel(): FormattingModel {
        // returns modern format pane formatting model that contain all format pane components and properties (called on opening format and analytics pane or on editing format properties)
    }
    
    public destroy(): void {
        //one time cleanup code goes here (called once)
    }
}

Konštruktéra

Trieda vizuálu sa constructor volá pri vytváraní inštancie vizuálu. Možno ho použiť na akékoľvek operácie nastavenia, ktoré vizuál potrebuje.

constructor(options: VisualConstructorOptions)

VisualConstructorMožnosti

Tieto rozhrania sa aktualizujú každou novou verziou rozhrania API. Ak chcete získať najaktuálnejší formát rozhrania, prejdite do nášho odkladacieho priestoru GitHub.

Nasledujúci zoznam popisuje niektoré vlastnosti VisualConstructorOptions rozhrania:

  • element: HTMLElement – odkaz na prvok DOM, ktorý obsahuje váš vizuál,

  • host: IVisualHost – kolekcia vlastností a služieb, ktoré možno použiť na interakciu s hostiteľom vizuálu (Power BI)

    IVisualHost obsahuje tieto služby:

    • createSelectionIdBuilder – generuje a ukladá metaúdaje pre položky dostupné na výber vo vašom vizuáli,
    • createSelectionManager – vytvorí komunikačný most používaný na oboznamovanie hostiteľa vizuálu so zmenami stavu výberu – pozrite si informácie o rozhraní API na výber,
    • hostCapabilities
    • refreshHostData
    • downloadService – vráti rozbalené informácie o výsledku stiahnutia.
    • eventService – vráti informácie o udalostiach vykresľovania.
    • hostEnv
    • displayWarningIcon – vráti chybu alebo hlásenie s upozornením.
    • licenseManager – vráti informácie o licencii.
    • createLocalizationManager – generuje manažéra na pomoc s lokalizáciou
    • applyJsonFilter – použije konkrétne typy filtrov. Pozrite si tému Rozhranie API filtra
    • applyCustomSort – umožňuje vlastné možnosti zoradenia,
    • acquireAADTokenService– vráti informácie o overení v systéme Microsoft Entra ID.
    • webAccessService – vráti stav povolenia na prístup k vzdialeným zdrojom.
    • openModalDialog – vráti dialógové okno.
    • persistProperties – umožňuje používateľom vytvárať trvalé nastavenia a ukladať ich spolu s definíciou vizuálu, aby boli k dispozícii pri ďalšom načítaní,
    • eventService – vráti službu udalosti na podporu udalostí vykresľovania ,
    • storageService – vráti službu, ktorá pomáha s používaním lokálneho úložiska vo vizuáli,
    • storageV2Service – vráti službu, ktorá pomáha s používaním lokálneho úložiska verzie 2 vo vizuáli
    • tooltipService – vráti službu pre názvy tlačidiel na pomoc s používaním popisov vo vizuáli,
    • telemetry
    • drill
    • launchUrl– pomáha spustiť URL adresu na ďalšej karte
    • authenticationService – vráti token Microsoft Entra ID.
    • locale – vráti reťazec miestneho nastavenia, pozrite si tému Lokalizácia
    • instanceId – vráti reťazec na identifikáciu aktuálnej inštancie vizuálu
    • colorPalette – vráti colorPalette, ktorá je potrebná na použitie farieb vo vašich údajoch
    • fetchMoreData – podporuje používanie väčšieho počtu údajov, než je štandardný limit (1 000 riadkov). Pozrite si tému Načítanie väčšieho
    • switchFocusModeState – pomáha zmeniť stav režimu zamerania

Aktualizácia

Všetky vizuály musia implementovať metódu verejnej aktualizácie, ktorá sa volá vždy, keď dôjde k zmene údajov alebo hostiteľského prostredia.

public update(options: VisualUpdateOptions): void

VisualUpdateMožnosti

  • viewport: IViewport – dimenzie zobrazenia, v rámci ktoré by mal byť vizuál vykreslený,
  • dataViews: DataView[] – objekt zobrazenia údajov, ktorý obsahuje všetky údaje potrebné na vykreslenie vášho vizuálu (vizuál vo všeobecnosti používa kategorickú vlastnosť v časti DataView).
  • type: VisualUpdateType– príznakom označujúcim typ údajov, ktoré sa aktualizujú (Zmena veľkosti údajov | , zmena veľkosti | stĺpca ViewMode | Style | – zmena veľkostiEnd)
  • viewMode: ViewMode– príznak označujúci režim zobrazenia vizuálu (Zobraziť upraviť | | inFocusEdit)
  • editMode: EditMode– príznak označujúci režim úprav vizuálu (Predvolené | rozšírené) (ak vizuál podporuje AdvancedEditMode, mal by vykresliť rozšírené ovládacie prvky používateľského rozhrania len vtedy, keď je režim editMode nastavený na možnosť Rozšírené, pozrite si tému AdvancedEditMode)
  • operationKind?: VisualDataChangeOperationKind – príznak označujúci typ zmeny údajov (Vytvoriť | pripojenie)
  • jsonFilters?: IFilter[] – kolekcia použitých filtrov json
  • isInFocus?: boolean – príznak na indikovanie, či sa vizuál nachádza v režime zamerania alebo nie.

getFormattingModel (voliteľné)

Táto metóda sa volá raz zakaždým, keď otvoríme tablu Vlastnosti alebo používateľ upraví niektorú z vlastností na table. Vráti FormattingModel všetky informácie o návrhu tably Vlastnosti, hierarchiu, vlastnosti a najnovšie hodnoty formátovania.

getFormattingModel(): visuals.FormattingModel;

destroy (voliteľné)

Funkcia destroy sa volá vtedy, keď vizuál nie je načítaný, a možno ju použiť na úlohy čistenia, ako napríklad odstránenie prijímačov udalostí.

public destroy(): void

Prepitné

Power BI zvyčajne nevolá funkciu , destroy pretože je rýchlejšie odstrániť celý prvok IFrame, ktorý obsahuje vizuál.