[]
创建 Svelte 应用程序的最简单方法是使用SvelteKit工具。从命令提示符或终端运行以下命令:
npm create svelte@latest arjs-svelte-designer-app
arjs-svelte-designer-app一旦这些命令成功运行,您就可以在您最喜欢的 IDE(例如 Visual Studio Code)中打开新创建的命令。
我们通过 npm 包提供 Svelte Report Designer 组件@grapecity/activereports-svelte。该软件包建立在基础@grapecity/activereports软件包的基础上,其中包含组件操作所必需的核心功能。
要安装最新版本的@grapecity/activereports-svelte软件包及其必要的依赖项,请从应用程序的根目录执行以下命令:
npm install @grapecity/activereports-svelte@latest
# or if you use yarn
yarn add @grapecity/activereports-svelte@latest
SvelteVite.js在底层使用在开发模式下运行应用程序并为生产构建它们。为了让ActiveReportsJS与Vite.js一起工作,我们需要调整Vite.js配置。在应用程序的根目录中创建一个名为的新文件alias.js并添加以下代码:
import moment from "./node_modules/moment";
export const { fn, min, max, now, utc, unix, months,
isDate, locale, invalid, duration, isMoment, weekdays,
parseZone, localeData, isDuration, monthsShort, weekdaysMin,
defineLocale, updateLocale, locales, weekdaysShort, normalizeUnits,
relativeTimeRounding, relativeTimeThreshold, calendarFormat, ISO_8601
} = moment;
export default moment;
然后打开vite.config.js file应用程序根文件夹中的 并将其内容替换为以下内容:
import { sveltekit } from '@sveltejs/kit/vite';
import path from "path";
/** @type {import('vite').UserConfig} */
const config = {
plugins: [sveltekit()],
resolve: {
alias: [
{
find: /^moment$/,
replacement: path.resolve(__dirname, "./alias.js"),
},
{
find: /^gc-dv$/,
replacement: path.resolve(
__dirname,
"./node_modules/@grapecity/activereports/lib/node_modules/gc-dv.js"
),
},
{
find: /^\@grapecity\/ar-js-pagereport$/,
replacement: path.resolve(
__dirname,
"./node_modules/@grapecity/activereports/lib/node_modules/@grapecity/ar-js-pagereport.js"
),
},
{
find: /^barcodejs$/,
replacement: path.resolve(
__dirname,
"./node_modules/@grapecity/activereports/lib/node_modules/barcodejs.js"
),
},
],
},
};
export default config;
ActiveReportsJS 使用报告模板文件的JSON格式和rdlx-json扩展名。
在static应用程序的文件夹中,创建一个名为 的新文件report.rdlx-json,并将以下内容插入其中。
{
"Name": "Report",
"Body": {
"ReportItems": [
{
"Type": "textbox",
"Name": "TextBox1",
"Value": "Hello, ActiveReportsJS Designer",
"Style": {
"FontSize": "18pt",
"PaddingLeft": "5pt",
"PaddingTop": "5pt"
},
"Width": "8.5in",
"Height": "0.5in"
}
]
}
}
将文件的默认内容替换src\routes+page.svelte为以下代码
<script lang="ts">
import '@grapecity/activereports/styles/ar-js-ui.css';
import '@grapecity/activereports/styles/ar-js-designer.css';
import {Designer} from "@grapecity/activereports-svelte";
</script>
<div id="viewer-host">
<Designer report={{ id: "report.rdlx-json", displayName: "my report" }}></Designer>
</div>
<style>
#viewer-host {
width: 100%;
height: 100vh;
}
</style>
默认情况下,SvelteKit 将首先在服务器上渲染任何页面,并将其作为 HTML 发送到客户端。但ActiveReportsJS只能在客户端操作。因此,我们需要禁用包含报表查看器的页面的服务器端呈现。+page.js我们可以通过添加包含以下内容的文件来做到这一点+page.svelte
export const prerender = false;
export const ssr = false;
您可以使用yarn run dev或npm run dev命令运行应用程序。默认情况下,该项目在http://localhost:5173/运行。。如果您浏览此 URL,ActiveReportsJS、ActiveReportsJS 报表设计器将出现在应用程序的起始页上并显示报表设计。您可以通过添加报表项、设置其属性、创建数据源等来测试基本功能。有关如何使用报表设计器组件的更多信息,请访问报表设计器界面页面报表设计器组件公开了由 TypeScript 声明提供的丰富API,因此您可以在 Svelte 应用程序中轻松使用它。