API απεικόνισης
Όλες οι απεικονίσεις ξεκινούν με μια κλάση που υλοποιεί τη IVisual
διασύνδεση . Μπορείτε να ονομάσετε την κλάση οτιδήποτε, αρκεί να υπάρχει ακριβώς μία κλάση που υλοποιεί τη IVisual
διασύνδεση .
Σημείωμα
Το όνομα κλάσης απεικόνισης πρέπει να είναι ίδιο με το visualClassName
pbiviz.json
στο αρχείο.
Η κλάση απεικόνισης θα πρέπει να υλοποιεί τις ακόλουθες μεθόδους, όπως φαίνεται στο παρακάτω δείγμα:
constructor
- μια τυπική κατασκευή που προετοιμάζει την κατάσταση της απεικόνισηςupdate
- ενημερώνει τα δεδομένα της απεικόνισηςgetFormattingModel
, επιστρέφει ένα μοντέλο μορφοποίησης που συμπληρώνει το τμήμα παραθύρου ιδιοτήτων (επιλογές μορφοποίησης), όπου μπορείτε να τροποποιήσετε τις ιδιότητες ανάλογα με τις ανάγκεςdestroy
- τυπική εφαρμογή καταστροφής για εκκαθάριση
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)
}
}
Κατασκευαστή
Η constructor
κλάση απεικόνισης καλείται όταν ξεκινά η απεικόνιση. Μπορεί να χρησιμοποιηθεί για οποιεσδήποτε λειτουργίες ρύθμισης που χρειάζεται η απεικόνιση.
constructor(options: VisualConstructorOptions)
VisualConstructorOptions
Αυτές οι διασυνδέσεις ενημερώνονται με κάθε νέα έκδοση του API. Για την πιο ενημερωμένη μορφή διασύνδεσης, μεταβείτε στο αποθετήριο δεδομένων GitHub.
Η παρακάτω λίστα περιγράφει ορισμένες από τις ιδιότητες της διασύνδεσης VisualConstructorOptions
:
element: HTMLElement
- μια αναφορά στο στοιχείο DOM που περιέχει την απεικόνισή σαςhost: IVisualHost
- μια συλλογή ιδιοτήτων και υπηρεσιών που μπορούν να χρησιμοποιηθούν για αλληλεπίδραση με τον κεντρικό υπολογιστή απεικόνισης (Power BI)IVisualHost
Το περιλαμβάνει τις ακόλουθες υπηρεσίες:createSelectionIdBuilder
- δημιουργεί και αποθηκεύει μετα-δεδομένα για επιλεγέντα στοιχεία στην απεικόνισή σαςcreateSelectionManager
- δημιουργεί τη γέφυρα επικοινωνίας που χρησιμοποιείται για την ειδοποίηση του κεντρικού υπολογιστή της απεικόνισης σχετικά με τις αλλαγές στην κατάσταση επιλογής, ανατρέξτε στο θέμα API επιλογής.hostCapabilities
refreshHostData
downloadService
- επιστρέφει ανεπτυγμένες πληροφορίες αποτελέσματος της λήψης.eventService
- επιστρέφει πληροφορίες σχετικά με την απόδοση συμβάντων.hostEnv
displayWarningIcon
- επιστρέφει σφάλμα ή προειδοποιητικό μήνυμα.licenseManager
- επιστρέφει πληροφορίες άδειας χρήσης.createLocalizationManager
- δημιουργεί ένα πρόγραμμα διαχείρισης που θα σας βοηθήσει με την τοπική προσαρμογήapplyJsonFilter
- εφαρμόζει συγκεκριμένους τύπους φίλτρων. Ανατρέξτε στο θέμα API φίλτρουapplyCustomSort
- επιτρέπει προσαρμοσμένες επιλογές ταξινόμησης.acquireAADTokenService
- επιστρέφει πληροφορίες ελέγχου ταυτότητας με το Microsoft Entra ID.webAccessService
- επιστρέφει την κατάσταση δικαιωμάτων για την πρόσβαση σε απομακρυσμένους πόρους.openModalDialog
- επιστρέφει ένα παράθυρο διαλόγου.persistProperties
- επιτρέπει στους χρήστες να δημιουργούν μόνιμες ρυθμίσεις και να τις αποθηκεύουν μαζί με τον ορισμό της απεικόνισης, ώστε να είναι διαθέσιμες στην επόμενη επαναφόρτωσηeventService
- επιστρέφει μια υπηρεσία συμβάντων για την υποστήριξη συμβάντων RenderstorageService
- επιστρέφει μια υπηρεσία που σας βοηθά να χρησιμοποιήσετε τον τοπικό χώρο αποθήκευσης στην απεικόνισηstorageV2Service
- επιστρέφει μια υπηρεσία που σας βοηθά να χρησιμοποιήσετε την έκδοση 2 του τοπικού χώρου αποθήκευσης στην απεικόνισηtooltipService
- επιστρέφει μια υπηρεσία συμβουλής εργαλείου για να σας βοηθήσει να χρησιμοποιήσετε συμβουλές εργαλείων στην απεικόνισηtelemetry
drill
launchUrl
- βοηθά στην εκκίνηση της διεύθυνσης URL στην επόμενη καρτέλαauthenticationService
- επιστρέφει ένα διακριτικό αναγνωριστικού Microsoft Entra.locale
- επιστρέφει μια συμβολοσειρά τοπικών ρυθμίσεων, ανατρέξτε στο θέμα Τοπική προσαρμογήinstanceId
- επιστρέφει μια συμβολοσειρά για τον προσδιορισμό της τρέχουσας παρουσίας απεικόνισηςcolorPalette
- επιστρέφει την colorPalette που απαιτείται για την εφαρμογή χρωμάτων στα δεδομένα σαςfetchMoreData
- υποστηρίζει τη χρήση περισσότερων δεδομένων από το τυπικό όριο (1.000 γραμμές). Ανατρέξτε στο θέμα Λήψη περισσότερων δεδομένωνswitchFocusModeState
- βοηθά στην αλλαγή της κατάστασης λειτουργίας εστίασης
Ενημερωμένη έκδοση
Όλες οι απεικονίσεις πρέπει να υλοποιούν μια δημόσια μέθοδο ενημέρωσης που καλείται κάθε φορά που υπάρχει μια αλλαγή στο περιβάλλον δεδομένων ή κεντρικού υπολογιστή.
public update(options: VisualUpdateOptions): void
VisualUpdateOptions
viewport: IViewport
- διαστάσεις της οπτικής γωνίας μέσα στις οποίες πρέπει να αποδοθεί η απεικόνισηdataViews: DataView[]
- το αντικείμενο προβολής δεδομένων που περιέχει όλα τα δεδομένα που απαιτούνται για την απόδοση της απεικόνισης (μια απεικόνιση χρησιμοποιεί γενικά την κατηγορική ιδιότητα στην περιοχή DataView)type: VisualUpdateType
- σημαίες που υποδεικνύουν τον τύπο των δεδομένων που ενημερώνονται (Data | Resize | ViewMode | Style | ResizeEnd)viewMode: ViewMode
- σημαίες που υποδεικνύουν τη λειτουργία προβολής της απεικόνισης (Προβολή | επεξεργασίας | InFocusEdit)editMode: EditMode
- σημαία που υποδεικνύει τη λειτουργία επεξεργασίας της απεικόνισης (Προεπιλογή | για προχωρημένους) (εάν η απεικόνιση υποστηρίζει AdvancedEditMode, θα πρέπει να αποδίδει τα προηγμένα στοιχεία ελέγχου περιβάλλοντος εργασίας χρήστη μόνο όταν η editMode έχει οριστεί σε Για προχωρημένους, ανατρέξτε στο θέμα AdvancedEditMode)operationKind?: VisualDataChangeOperationKind
- σημαία που υποδεικνύει τον τύπο αλλαγής δεδομένων (Δημιουργία | προσάρτησης)jsonFilters?: IFilter[]
- συλλογή εφαρμοσμένων φίλτρων jsonisInFocus?: boolean
- σημαία για υπόδειξη εάν η απεικόνιση βρίσκεται σε λειτουργία εστίασης ή όχι
getFormattingModel (προαιρετικό)
Αυτή η μέθοδος καλείται μία φορά κάθε φορά που ανοίγουμε το τμήμα παραθύρου ιδιοτήτων ή ο χρήστης επεξεργάζεται οποιαδήποτε από τις ιδιότητες στο τμήμα παραθύρου. Επιστρέφει FormattingModel
με όλες τις πληροφορίες σχετικά με τη σχεδίαση, την ιεραρχία, τις ιδιότητες και τις πιο πρόσφατες τιμές μορφοποίησης του τμήματος παραθύρου ιδιοτήτων.
getFormattingModel(): visuals.FormattingModel;
destroy (προαιρετικό)
Η συνάρτηση destroy καλείται όταν καταργηθεί η φόρτωση της απεικόνισης και μπορεί να χρησιμοποιηθεί για εργασίες εκκαθάρισης, όπως η κατάργηση των ακροατών συμβάντων.
public destroy(): void
Φιλοδώρημα
Το Power BI γενικά δεν καλεί destroy
το καθώς είναι ταχύτερη η κατάργηση ολόκληρου του IFrame που περιέχει την απεικόνιση.