流程图控件GoJS教程:从TypeScript源代码构建GoJS

GoJS是一款功能强大,快速且轻量级的流程图控件,可帮助你在JavaScript 和HTML5 Canvas程序中创建流程图,且极大地简化您的JavaScript / Canvas 程序。

GoJS最新版

所有客户都可以使用go.js和go-debug.js文件运行他们的应用程序。但是,如果您购买了GoJS TypeScript源代码的许可证,则可以从TypeScript源构建您的应用程序。流行的模块打包器(例如Webpack)可以从源中删除许多模块(如果您不使用它们),以缩小可交付文件的大小。

MinimalSource和MaximalSource项目

GoJS套件在/projects目录 /minimalSource和下有两个子目录/maximalSource。

该minimalSource 项目展示了如何建立GoJS同时去除一切可能的可选模块。该maximalSource 项目展示了如何建立GoJS同时匹配释放go.js的功能和去-debug.js文件。

这两个项目需要webpack和npm运行。

另外还有minimalSourceBrowserify,它显示了如何使用Browserify而不是Webpack从源进行构建。

从源代码构建时可以删除的类/模块

几个类(例如CommandHandler和工具)可能对于添加到您的项目中是必不可少的,而其他类(例如,除了一种Layout和一种类型的所有类)Model通常可以删除。以下是webpack可以从构建中删除的模块的列表,前提是您的代码中未引用这些模块:

  • CommandHandler,是键盘功能所必需的。
  • SVGSurface,需要调用Diagram.makeSvg
  • 树模型
  • GraphLinksModel,无需加载此模块,默认的Diagram.model的类型为Model。
  • 总览
  • 调色板

版面:

  • 格布局
  • 树布局
  • LayeredDigraphLayout
  • 环形布局
  • ForceDirectedLayout。

鼠标按下工具:

  • 动作工具
  • 重新链接工具
  • 链接重塑工具
  • 调整大小工具
  • 旋转工具

鼠标移动工具:

  • 链接工具
  • 拖曳工具
  • DragSelecting工具
  • 平移工具

鼠标向上工具:

  • ContextMenu工具
  • ClickCreating工具
  • 点击选择工具

有几种“内置”面板类型,每种类型都是PanelLayout。其中一些是构建源所必需的:

  • PanelLayoutPosition
  • PanelLayoutVertical
  • PanelLayoutLink
  • PanelLayoutAuto
  • PanelLayoutGrid

但是,可以在没有以下面板类型的情况下进行构建:

  • PanelLayoutHorizontal
  • PanelLayoutSpot
  • PanelLayoutTable
  • PanelLayoutViewbox
  • PanelLayoutTableRow
  • PanelLayoutTableColumn
  • PanelLayoutGraduated

源索引文件演示了Panel.addPanelLayout包括每种面板类型的必要调用。

使用可选类

许多类仅需要用于包含在源代码构建中。对于某些功能,例如工具,CommandHandler和SVGSurface,您需要确保显式初始化它们。可以在maximalSource项目的maximal-index.ts代码中找到此示例。完整go.js库不需要这样做,因为该go对象已经具有对每个对象的引用。

一个典型的GoJS项目不会删除所有甚至大部分这些模块,并且可能会使用其中的大多数。由于Northwood的内部构建过程已经过优化,可以在高级模式下使用Google Closure编译器,因此可能需要花费大量精力才能go.js 从源代码中生成一个小于项目发行目录中包含的软件包的软件包。

有关GoJS源代码的重要许可证信息

GoJS源代码受SoftwareLicenseAgreement.pdf中包含的我们许可条款的约束。

请勿使用,释放(部署)或分发未缩小的源代码。要为自己的应用程序构建GoJS,您必须使用流行的混淆/缩小工具,例如Google Closure Compiler。

如果您认为可以从其他图形优化中受益,那么会遇到独特或节点数量多的图表情况,请联系客服。


想要购买GoJS正版授权,或了解更多产品信息请点击【咨询在线客服】

流程图控件GoJS教程:从TypeScript源代码构建GoJS

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月15日
下一篇 2020年10月15日

相关推荐

发表回复

登录后才能评论