Visual API
Minden vizualizáció egy olyan osztálysal kezdődik, amely megvalósítja a IVisual
felületet. Bármit nevezhet az osztálynak, ha pontosan egy osztály implementálja a IVisual
felületet.
Feljegyzés
A vizualizációosztály nevének meg kell egyeznie a visualClassName
pbiviz.json
fájlban szereplő névvel.
A vizualizációosztálynak a következő módszereket kell implementálnia az alábbi mintában látható módon:
-
constructor
- egy szabványos konstruktor, amely inicializálja a vizualizáció állapotát -
update
- frissíti a vizualizáció adatait -
getFormattingModel
, egy olyan formázási modellt ad vissza, amely feltölti a tulajdonságpanelt (formázási beállítások), ahol szükség szerint módosíthatja a tulajdonságokat -
destroy
- egy standard destruktor a tisztításhoz
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)
}
}
Konstruktor
A constructor
vizualizációosztály meghívása a vizualizáció példányosításakor történik. A vizualizáció által igényelt beállítási műveletekhez használható.
constructor(options: VisualConstructorOptions)
VisualConstructorOptions
Ezek a felületek minden új API-verzióval frissülnek. A legfrissebb felületformátumért keresse fel a GitHub-adattárat.
Az alábbi lista a felület néhány tulajdonságát VisualConstructorOptions
ismerteti:
element: HTMLElement
- a vizualizációt tartalmazó DOM-elemre mutató hivatkozáshost: IVisualHost
- a vizualizációs gazdagéppel (Power BI) való interakcióhoz használható tulajdonságok és szolgáltatások gyűjteményeIVisualHost
a következő szolgáltatásokat tartalmazza:-
createSelectionIdBuilder
– metaadatokat hoz létre és tárol a vizualizációban kiválasztott elemekhez -
createSelectionManager
- létrehozza a kommunikációs hidat, amellyel értesítheti a vizualizáció gazdagépét a kijelölési állapot változásairól, lásd : Selection API. hostCapabilities
refreshHostData
-
downloadService
- a letöltés bővített eredményadatait adja vissza. -
eventService
- az események renderelésével kapcsolatos információkat ad vissza. hostEnv
-
displayWarningIcon
- hibaüzenetet vagy figyelmeztető üzenetet ad vissza. -
licenseManager
- licencadatokat ad vissza. -
createLocalizationManager
- létrehoz egy kezelőt, hogy segítsen a honosításban -
applyJsonFilter
- adott szűrőtípusokat alkalmaz. Lásd: Filter API -
applyCustomSort
- lehetővé teszi az egyéni rendezési beállításokat. -
acquireAADTokenService
- a Microsoft Entra-azonosító hitelesítési adatait adja vissza. -
webAccessService
- a távoli erőforrásokhoz való hozzáférés engedélyállapotát adja vissza. -
openModalDialog
- egy párbeszédpanelt ad vissza. -
persistProperties
– lehetővé teszi a felhasználók számára, hogy állandó beállításokat hozzanak létre, és a vizualizáció definíciójával együtt mentsék őket, így a következő újratöltéskor elérhetők lesznek -
eventService
- egy eseményszolgáltatást ad vissza a renderelési események támogatásához -
storageService
- egy szolgáltatást ad vissza a vizualizáció helyi tárolójának használatához -
storageV2Service
- egy szolgáltatást ad vissza, amely segít a vizualizációban a 2. helyi tárverzió használatát -
tooltipService
- egy elemleírás-szolgáltatást ad vissza a vizualizáció elemleírásainak használatához telemetry
drill
-
launchUrl
- segít elindítani az URL-címet a következő lapon -
authenticationService
- Egy Microsoft Entra-azonosító jogkivonatot ad vissza. -
locale
- területi sztringet ad vissza, lásd: Honosítás -
instanceId
- egy sztringet ad vissza az aktuális vizualizációpéldány azonosításához -
colorPalette
- visszaadja a színpalettát, amely az adatok színeinek alkalmazásához szükséges -
fetchMoreData
- a standard korlátnál (1000 sor) több adat használatát támogatja. További adatok beolvasása -
switchFocusModeState
- segít a fókusz mód állapotának módosításában
-
update
Minden vizualizációnak végre kell hajtania egy nyilvános frissítési módszert, amelyet akkor hívunk meg, amikor változás történt az adatokban vagy a gazdagépkörnyezetben.
public update(options: VisualUpdateOptions): void
VisualUpdateOptions
-
viewport: IViewport
- annak a nézetportnak a méretei, amelyeket a vizualizációnak a -
dataViews: DataView[]
- a vizualizáció megjelenítéséhez szükséges összes adatot tartalmazó adatnézet-objektum (a vizualizáció általában a DataView kategorikus tulajdonságát használja) -
type: VisualUpdateType
- a frissítendő adatok típusát jelző jelzők ( | -
viewMode: ViewMode
- a vizualizáció nézetmódját jelző jelzők (View | Edit | InFocusEdit) -
editMode: EditMode
- a vizualizáció szerkesztési módját jelző jelölő (Alapértelmezett | speciális) (ha a vizualizáció támogatja az AdvancedEditMode-t, a speciális felhasználói felület vezérlőit csak akkor kell megjelenítenie, ha az editMode speciálisra van állítva, lásd: AdvancedEditMode) -
operationKind?: VisualDataChangeOperationKind
- az adatváltozás típusát jelző jelző ( | ) -
jsonFilters?: IFilter[]
- alkalmazott JSON-szűrők gyűjteménye -
isInFocus?: boolean
- jelző, amely jelzi, hogy a vizualizáció fókusz módban van-e vagy sem -
pendingChanges?: PendingChanges
– jelölő, amely jelzi, hogy a helyi szűrőmódosítások történnek, de mégis érvényesek a jelentésre, általában akkor aktiválódnak, ha alkalmazza az összes szeletelőt, gomb létezikpendingChanges[Filter]: boolean
getFormattingModel (nem kötelező)
Ezt a metódust a rendszer minden alkalommal meghívja, amikor megnyitjuk a tulajdonságok panelt, vagy a felhasználó szerkessze a panel bármelyik tulajdonságát. A tulajdonságok panel kialakításával, hierarchiájával, tulajdonságaival és a legújabb formázási értékekkel kapcsolatos összes információt visszaadja FormattingModel
.
getFormattingModel(): visuals.FormattingModel;
megsemmisítés (nem kötelező)
A rendszer meghívja a megsemmisítő függvényt a vizualizáció eltávolításakor, és olyan tisztítási feladatokhoz használható, mint például az eseményfigyelők eltávolítása.
public destroy(): void
Tipp.
A Power BI általában nem hívható destroy
meg, mivel gyorsabb a vizualizációt tartalmazó teljes IFrame eltávolítása.