0

我正在使用 Syncfusion 透视视图,在这里我需要在单击按钮时保存多个图表并在单击按钮时加载图表。我可以使用 getPersistData() 和 loadPersistData() 保存和加载数据。但是我想保存工具栏选择,就像用户选择了图表 1 的条形图和图表 2 的线形图,然后在按钮上再次加载这些图表时,单击图表 1 应加载为条形图,而图表 2 将加载为折线图。用户使用工具栏完成的任何配置,例如用户是否选择了网格或 1 个透视视图和图表以用于第二个透视视图再次加载它们我想根据他们之前的选择加载。

4

1 回答 1

1

我们已经分析了您的需求,并使用工具栏功能准备了一个数据透视示例,以使用当前视图(表格或图表)和图表类型保存和加载数据透视报告。请参考以下示例和代码示例。

示例: https ://stackblitz.com/edit/angular-fsd4c1?file=app.component.ts

代码示例:

loadReport(args: any) {
    let reportCollection: string[] = [];
    if (localStorage.pivotviewReports && localStorage.pivotviewReports !== "") {
        reportCollection = JSON.parse(localStorage.pivotviewReports);
    }
    reportCollection.map(function (item: any): void {
        if (args.reportName === item.reportName) {
            args.report = item.report;
        }
    });
    if (args.report) {
        var report = JSON.parse(args.report);
        this.pivotObj.chartSettings.chartSeries.type = report.chartSettings.chartSeries.type;
        this.pivotObj.displayOption = report.displayOption;
        this.pivotObj.currentView = report.displayOption.primary === 'Chart' ? 'Chart' : 'Table';
        this.pivotObj.dataSourceSettings = report.dataSourceSettings;
    }
}
于 2021-07-16T04:51:15.147 回答