[]
静态资源文件是 Web应用的资源,不需要网络传输,不需要与其他资源一起压缩或缓存,应用的代码可以使用相对路径引用静态资源,图片和字体是典型的静态资源,如果您是以下场景,推荐使用静态资源:
报表模板不需要经常修改
加载报表前不需要修改
报表模板不需要 运行时绑定数据源
可以接受暴露报表模板直接下载
默认Angular 应用的 静态资源配置 是放置在 src/assets
文件夹下面的,因此您可以复制报表模板到该文件夹下,并在open
方法中使用相对路径引用 ,接口说明参考Angular Report Viewer component, 示例代码:
import { Component, ViewChild } from '@angular/core';
import { ViewerComponent } from '@grapecity/activereports-angular';
@Component({
selector: "app-root",
template:
'<div id="viewer-host"><gc-activereports-viewer (init)="onViewerInit()"> </gc-activereports-viewer></div> ',
styleUrls: ["./app.component.css"],
})
export class AppComponent {
@ViewChild(ViewerComponent, { static: false }) reportViewer: ViewerComponent;
onViewerInit() {
this.reportViewer.open('assets/report.rdlx-json');
}
}
更多信息参考 在 Angular 组件中使用报表 Viewer。
创建 React App 也可以让开发者加载静态资源静态资源 在public
文件夹。 因此,您可以直接复制报表文件到public文件夹,并在React Report Viewer 组件的report
属性使用相对路径引用。示例代码:
import React from "react";
import "./App.css";
import { Viewer } from "@grapecity/activereports-react";
function App() {
return (
<div id="viewer-host">
<Viewer report={{ Uri: 'report.rdlx-json' }} />
</div>
);
}
export default App;
更多信息参考 在 React 组件中加载报表。
也可以使用 viewer.open 方法中调用报表模板:
function App() {
const viewerRef = React.useRef<Viewer>(null);
React.useEffect(() => {
const viewerInstance = viewerRef.current.Viewer;
viewerInstance.open('report.rdlx-json');
}, []);
return (
<div id="viewer-host">
<Viewer ref={viewerRef} />
</div>
);
};
也可以参考加载报表示例 来了解具体使用。
Vue CLI 允许开发者将 静态资源 放在 public
文件夹下面。因此可以将报表模板复制到 public 文件夹,可以使用 report
属性来指定加载的报表对象,对象说明参考:Vue Report Viewer component,示例代码:
<template>
<div id="viewer-host">
<JSViewer v-bind:report="{ Uri: 'report.rdlx-json' }"></JSViewer>
</div>
</template>
<script>
import { Viewer } from "@grapecity/activereports-vue";
export default {
name: "App",
components: {
JSViewer: Viewer,
},
};
</script>
更多信息参考 在 Vue 项目中加载报表。
也可以使用 viewer.open 方法:
<template>
<div id="viewer-host">
<JSViewer ref="reportViewer"></JSViewer>
</div>
</template>
<script>
import { Viewer } from "@grapecity/activereports-vue";
export default {
name: "App",
components: {
JSViewer: Viewer
},
mounted() {
const viewer = this.$refs.reportViewer.Viewer();
viewer.open('report.rdlx-json');
}
};
点击在线示例查看具体引用。
在该应用中,您可以将报表模板放置在任何的应用文件夹中,并在JavaScript Report Viewer componentopen
方法中设置相对路径,示例代码:
<script>
var viewer = new ActiveReports.Viewer("#viewer-host");
viewer.open("report.rdlx-json");
</script>
更多信息参考 在纯 JavaScript 应用中使用报表Viewer。