如何集成ES6依赖框架

时间:2018-02-09 21:01:21

标签: qooxdoo vtk.js

我想将ES6依赖项(vtk.js)集成到Qooxdoo应用程序中。我不知道如何管理这个。这是Example使用vtk.js.所以我的问题是:

  1. 是否可以整合ES6 Dependencys?
  2. 什么时候可以,我该怎么做?

1 个答案:

答案 0 :(得分:0)

简短的回答是肯定的,有一些警告。 Qooxdoo v5(当前版本)不支持代码中的ES6结构,因为(a)生成器不接受该语法和(b)ES6需要严格模式,并且存在兼容性问题,导致无法正常工作。

您可以将Qooxdoo v5与ES6库一起使用,前提是您不想自己编写ES6代码 - 基于每个文件指定严格模式,并且您唯一的限制是不在代码上启用它生成器编译(即你的代码)。

但是,如果您使用新的编译器(github.com/qooxdoo-compiler),Qooxdoo v6支持开箱即用的ES6。此编译器将允许您编写ES6代码并在运行时进行转换,以便您还可以实现平台独立性。

Qooxdoo v6处于测试阶段且可通过github.com/qooxdoo获得 - 主分支非常稳定,并由核心团队成员用于制作,因此值得考虑。

在v6中,您可以自定义index.html生成,或使用externalResources中的compile.json键(如果您正在使用编译器)或通过qx.io.DynamicScriptLoader处理自己。< / p>

加载javascript后,您需要创建一个派生自qx.ui.core.Widget的自定义类并覆盖这些方法:

  • _createContentElement - 覆盖此方法以创建实现窗口小部件的DOM元素,即这是初始化VTK实例的位置
  • _getContentHint() - 返回首选高度&amp;的地图。小部件的宽度;它的工作是告诉Qooxdoo布局引擎小部件想要的大小
  • renderLayout - 调用此方法使元素出现在屏幕上并显示给定的大小和位置 - 实际上,这意味着您使用此方法修改实现自定义的DOM元素的尺寸插件

完成后,您将拥有一个与Qooxdoo集成的自定义小部件;剩下的就是暴露内部VTK实现或构建一个API来通过VTK来运行。