前言
随着前端技术的不断发展,越来越多的前端工具被开发出来。其中,npm 是前端开发中最常用的包管理工具之一。这篇文章将介绍如何使用 npm 包 ng-spagobi,这是一个用于集成 SpagoBI 报表的 AngularJS 组件。
简介
SpagoBI 是一种企业级开源的业务智能平台,它提供了数据分析和报告方面的多种功能。ng-spagobi 是一个运用了 SpagoBI 的 Web API 创建的 AngularJS 组件,可以在 AngularJS 应用中轻松地集成 SpagoBI 报表。ng-spagobi 支持多种数据源类型,包括数据库、OLAP 和 Web 服务等。
使用 ng-spagobi
首先,我们需要安装 ng-spagobi:
npm install ng-spagobi --save
接着,我们需要在应用模块中引入 ng-spagobi 模块:
angular.module('myApp', ['ng-spagobi']);
然后,我们就可以在 HTML 中使用 ng-spagobi 组件了。
创建 SpagoBI 报表
首先我们需要在 SpagoBI 中创建一个报表。假设我们创建了一个名为 myReport 的报表。
导出报表
接下来,我们需要导出这个报表。在 SpagoBI 的报表设计界面中,我们可以找到报表 URL:
http://my-spagobi-server/SpagoBI/servlet/AdapterHTTP?ACTION_NAME=EXECUTE_DOCUMENT_ACTION&DETAILS_TYPE=DOCUMENT&FOLDER_PATH=%2Fpublic%2FFolder1&EXECUTION_ROLE=Designer&DOCUMENT_PATH=%2Fpublic%2FFolder1%2FmyReport
这个 URL 就是我们后面需要用到的报表 URL。我们需要对其进行如下修改:
http://my-spagobi-server/SpagoBI/servlet/AdapterHTTP?ACTION_NAME=EXECUTE_DOCUMENT_ACTION&DETAILS_TYPE=DOCUMENT&FOLDER_PATH=%2Fpublic%2FFolder1&EXECUTION_ROLE=Designer&DOCUMENT_PATH=%2Fpublic%2FFolder1%2FmyReport&USE_JNDI=false&USE_HTTP_AUTHENTICATION=true&USERNAME=spagobi&PASSWORD=spagobi
修改后的 URL 中添加了以下参数:
- USE_JNDI=false:禁用 JNDI。
- USE_HTTP_AUTHENTICATION=true:使用 HTTP 认证。
- USERNAME=spagobi:SpagoBI 用户名。
- PASSWORD=spagobi:SpagoBI 密码。
在 AngularJS 中使用 ng-spagobi
我们可以将报表 URL 添加到 AngularJS 控制器中:
angular.module('myApp').controller('myController', function($scope) { $scope.reportUrl = 'http://my-spagobi-server/SpagoBI/servlet/AdapterHTTP?ACTION_NAME=EXECUTE_DOCUMENT_ACTION&DETAILS_TYPE=DOCUMENT&FOLDER_PATH=%2Fpublic%2FFolder1&EXECUTION_ROLE=Designer&DOCUMENT_PATH=%2Fpublic%2FFolder1%2FmyReport&USE_JNDI=false&USE_HTTP_AUTHENTICATION=true&USERNAME=spagobi&PASSWORD=spagobi'; });
在 HTML 中,我们可以使用 ng-spagobi 组件显示报表:
<ng-spagobi src="reportUrl"></ng-spagobi>
示例代码
下面是一个完整的示例:
-- -------------------- ---- ------- --------- ----- ----- --------------- ------ ----------------- --------------- ------- ------------------------------------------------------------------------------------ ------- --------------------------------------------------------- ------- ----- ----------------------------- ----------- ----------------------------- -------- ----------------------- ---------------- -------------------------------------------------- ---------------- - ---------------- - ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --- --------- ------- -------
结论
ng-spagobi 使得在 AngularJS 应用中集成 SpagoBI 报表变得十分简单。通过使用 ng-spagobi,我们可以轻松地将 SpagoBI 报表嵌入到我们的 AngularJS 应用中,为用户提供更丰富的数据报告和分析。如果你正在开发基于 AngularJS 的应用,不妨试试 ng-spagobi。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005671281e8991b448e35c6