Verwenden von Selektoren zum Steuern, welche visuellen Elemente wirksam werden

Einige Features ermöglichen es Ihnen, Selektoren zu verwenden, um zu steuern, welche visuellen Elemente wirksam werden. Die Auswahl ist optional, und wenn sie nicht angezeigt wird, gelten die Einstellungen für alle visuellen Elemente im Bericht.

Unterstützte Features

Selektoren können in den folgenden Features verwendet werden:

Auswahltypen

Name der Visualisierung

Wenden Sie die Einstellungen nur für das angegebene visuelle Element an.

selector: {
    $schema: "http://powerbi.com/product/schema#visualSelector",
    visualName: <a visual name> // You can retrieve the name using `getVisuals`
}

Um einen visuellen Namen zu finden, können Sie die getVisuals() API auf einer Seite verwenden und die Eigenschaft des name Visuellen abrufen. Der visuelle Name ist ein eindeutiger Bezeichner.

Visueller Typ

Wenden Sie die Einstellungen auf alle Visuellen aus dem angegebenen Typ an.

selector: {
    $schema: "http://powerbi.com/product/schema#visualTypeSelector",
    visualType: <a visual type> // You can retrieve the type using `getVisuals`
}

Um einen visuellen Typ zu finden, können Sie die getVisuals() API auf einer Seite verwenden und die Eigenschaft des type Visuellen abrufen.

Datenschnittziel

Wenden Sie den Datenschnittstatus nur für die Datenschnitte mit dem angegebenen Ziel an.

selector: {
    $schema: "http://powerbi.com/product/schema#slicerTargetSelector",
    target: <target data field>  
}

Beispiele

Visuelle Kopfzeileneinstellungen

  • Blenden Sie alle visuellen Kopfzeilen im Bericht aus.

    let config = {
        …
        settings: {
            …
            visualSettings: {
                visualHeaders: [
                    {
                        settings: {
                            visible: false
                        }
                        /* No selector - Hide visual header for all the visuals in the report */
                    }
                ]
            }
        }
    };
    
  • Blenden Sie mithilfe des visuellen Selektors eine visuelle Kopfzeile für ein bestimmtes Visuelles aus.

    let config = {
        …
        settings: {
            …
            visualSettings: {
                visualHeaders: [
                    {
                        settings: {
                            visible: false
                        }
                        selector: {
                            $schema: "http://powerbi.com/product/schema#visualSelector",
                            visualName: "VisualContainer1",
                        }
                    }
                ]
            }
        }
    };
    

Sowohl Menübefehlerweiterungen als auch integrierte Befehle zeigen Unterstützungsauswahlen an.

  • Hinzufügen eines Erweiterungsbefehls zu einem bestimmten Menü für visuelle Optionen.

    let config = {
        ...
        settings: {
            ...
    
            // Adding the extension command to the options menu
            extensions: [
                {
                    command: {
                        name: "campaign",
                        title: "Start campaign",
                        icon: base64Icon,
                        selector: {
                            $schema: "http://powerbi.com/product/schema#visualSelector",
                            visualName: tableVisualName
                        },
                        extend: {
                            visualOptionsMenu: {
                                title: "Start campaign",
                                menuLocation: models.MenuLocation.Top,
                            }
                        }
                    }
                },
            ],
        }
    }
    
  • Blenden Sie einige integrierte Befehle für alle visuellen Elemente mit table Typ aus.

    let tableSelector = {
        $schema: "http://powerbi.com/product/schema#visualTypeSelector",
        visualType: 'table'
    };
    
    let config = {
        ...
        settings: {
            ...
            // Hiding built-in commands on the options menu
            commands: [
                {
                    spotlight: {
                        selector: tableSelector,
                        displayOption: models.CommandDisplayOption.Hidden,
                    },
                    exportData: {
                        selector: tableSelector,
                        displayOption: models.CommandDisplayOption.Hidden,
                    },
                    seeData: {
                        selector: tableSelector,
                        displayOption: models.CommandDisplayOption.Hidden,
                    },
                }
            ]
        },
    };
    

Datenschnitte beim Laden

Hinweis

Datenschnitte beim Laden unterstützen keine visuelle Typauswahl

  • Festlegen eines bestimmten Datenschnitts nach Name

    let slicers = [
        {
            selector: {
                $schema: "http://powerbi.com/product/schema#visualSelector",
                visualName: "d1feb8891635af3b335a"
            },
            state: {
                filters: [
                {
                    $schema:"http://powerbi.com/product/schema#advanced",
                    target: {
                        table: "Store",
                        column: "StoreNumber"
                    },
                    filterType: models.FilterType.AdvancedFilter,
                    logicalOperator: "And",
                    conditions: [
                        { operator: "GreaterThanOrEqual", value: 37 },
                        { operator: "LessThanOrEqual", value: 576 }]
                }]
            }
        }
    ];
    
    embedConfig = {
        slicers: slicers,
        ...
    };
    
  • Festlegen von Datenschnitten nach Ziel

    // We want to slice all slicers with "StoreNumber" column target
    let target = {
        table: "Store",
        column: "StoreNumber"
    };
    
    let slicers = [
        {
            selector: {
                $schema: "http://powerbi.com/product/schema#slicerTargetSelector",
                target: target
            },
            state: {
                filters: [
                {
                    $schema:"http://powerbi.com/product/schema#advanced",
                    target: target,
                    filterType: models.FilterType.AdvancedFilter,
                    logicalOperator: "And",
                    conditions: [
                        {operator: "GreaterThanOrEqual", value: 37 },
                        {operator: "LessThanOrEqual", value: 576 }]
                }]
            }
        }
    ];
    
    embedConfig = {
        slicers: slicers,
        ...
    };
    

Nächste Schritte