# PB集成到SatWeb

通过pbtoweb转换完成的pb程序,可以集成到SatWeb中。

集成效果如下: report

# 集成程序

将转换后的pb整个程序目录命名为page, 放到服务端satwebdata目录下,如:d:/server/plugins/satweb/data

提示: 首页会自动加载page目录下的index.js文件,这个文件中导入了其它的js文件(pb的窗口文件、全局函数等),这些文件会自动加载。

# 配置菜单

在菜单管理模块可以为PB程序添加菜单,我们以添加一个PB窗口的菜单为例,演示如何添加菜单。

  1. 打开菜单管理,点击新增按钮,弹出增加菜单界面。分别选择菜单图标,输入菜单名称、显示排序、路由地址,并点击确定按钮 web

  2. 在新增加的菜单行,点击该菜单右边的增加按钮,新增菜单。 web 在添加菜单界面录入如下: web

# 参数说明

名称 说明
组件路径 amis 必须填amis
路由地址 w_rw_zhjh 可以是任意的值,按照自己的规则填写,示例是pb的窗口名称
路由参数 {"name":"w_rw_zhjh","myarg":"ccc"} json字符串,其中name为窗口名称必须有,其它内容可以自定义,所有参数会被传入到窗口中,窗口中可以通过 message.powerobjectparm获取,如message.powerobjectparm.myarg可以得到ccc

刷新浏览器后可以看到左侧增加了菜单。点击对应菜单后可以看到界面。

# 打包发布程序

上面集成的程序是通过源码集成的,我们发布程序时,希望保护自己的源码。

通过打包工具可以将转换的js程序打包为一个文件,并进行混淆、压缩等处理,从而保护自己的程序

# 1. 安装esbuild

npm install esbuild -g

# 2. 编译程序

esbuild E:\pbsrc\page\index.js --bundle --minify --outfile=d:/index.js

其中E:\pbsrc\page\index.js 可能有很多导入文件

import './topsys/lht_vo_toolbar.js';
import './topsys/u_cst_splitcontainer.js';
import './dw_pfc/u_function.js';
import './topsys/pfc_n_cst_resize.js';
import './topsys/w_base.js';
...

这些文件都会被打包到d:/index.js文件中

# 3. 发布程序

将d:/index.js 放到服务端satweb目录下,如:d:/server/plugins/satweb/data/page