Viewer Component Integration

These samples show how to integrate the ActiveReportsJS Viewer component into Angular, React, Vue, and pure JavaScript applications. Visit the Integration page for more information. Scroll down the page to see the code.

<template> <div id="viewer-host"> <JSViewer :report="{ Uri: '/activereportsjs/demos/resource/reports/Frontstore.rdlx-json' }"></JSViewer> </div> </template> <script> import Vue from "vue"; import { Viewer } from "@grapecity/activereports-vue"; import "@grapecity/activereports/pdfexport"; import "@grapecity/activereports/htmlexport"; import "@grapecity/activereports/xlsxexport"; import { FontStore } from "@grapecity/activereports/core"; const app = { name: "App", components: { JSViewer: Viewer, }, }; FontStore.registerFonts("/activereportsjs/demos/resource/fontsConfig.json"); new Vue({ render: (h) => h(app), }).$mount("#app"); </script> <style> #viewer-host { width: 100%; height: 600px; } </style>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>ActiveReportsJS sample</title> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" href="https://cdn.materialdesignicons.com/2.8.94/css/materialdesignicons.min.css" /> <!-- SystemJS --> <script src="node_modules/systemjs/dist/system.src.js"></script> <script src="systemjs.config.js"></script> <script src="/activereportsjs/demos/arjs/dist/ie-polyfills.js"></script> <script src="/activereportsjs/demos/arjs/dist/ar-js-core.js"></script> <script src="/activereportsjs/demos/arjs/dist/ar-js-viewer.js"></script> <link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap" rel="stylesheet" /> <link rel="stylesheet" type="text/css" href="/activereportsjs/demos/arjs/styles/ar-js-ui.css" /> <link rel="stylesheet" type="text/css" href="/activereportsjs/demos/arjs/styles/ar-js-viewer.css" /> <script> System.import("./app.vue"); </script> </head> <body style="margin: 0"> <div id="app"></div> </body> </html>
(function (global) { System.config({ transpiler: "plugin-babel", babelOptions: { es2015: true, }, meta: { "*.css": { loader: "css" }, "*.vue": { loader: "vue-loader" }, }, paths: { // paths serve as alias "npm:": "node_modules/", }, // map tells the System loader where to look for things map: { jszip: "npm:jszip/dist/jszip.js", css: "npm:systemjs-plugin-css/css.js", vue: "npm:vue/dist/vue.min.js", 'vue-demi': "npm:vue-demi/lib/index.cjs.js", '@vue/composition-api': 'npm:@vue/composition-api/dist/vue-composition-api.js', "vue-loader": "npm:systemjs-vue-browser/index.js", "plugin-babel": "npm:systemjs-plugin-babel/plugin-babel.js", "systemjs-babel-build": "npm:systemjs-plugin-babel/systemjs-babel-browser.js", "@grapecity/activereports/pdfexport": "npm:@grapecity/activereports/dist/ar-js-pdf.js", "@grapecity/activereports/htmlexport": "npm:@grapecity/activereports/dist/ar-js-html.js", "@grapecity/activereports/xlsxexport": "npm:@grapecity/activereports/dist/ar-js-xlsx.js", "@grapecity/activereports-vue": "npm:@grapecity/activereports-vue/lib/index.js", "@grapecity/activereports/reportviewer": "npm:@grapecity/activereports/dist/ar-js-viewer.js", "@grapecity/activereports/viewer": "npm:@grapecity/activereports/dist/ar-js-viewer.js", "@grapecity/activereports/core": "npm:@grapecity/activereports/dist/ar-js-core.js", "@grapecity/activereports/styles": "npm:@grapecity/activereports/styles", "@grapecity/activereports-localization": "npm:@grapecity/activereports-localization/dist/ar-js-locales.js", "@grapecity/ar-js-pagereport": "npm:@grapecity/activereports/dist/ar-js-core.js", }, // packages tells the System loader how to load when no filename and/or no extension packages: { src: { defaultExtension: "js", }, node_modules: { defaultExtension: "js", }, }, }); })(this);