【问题标题】:Loading modules in qooxdoo desktop (browser environment)qooxdoo桌面加载模块(浏览器环境)
【发布时间】:2016-09-16 14:47:18
【问题描述】:

我正在努力如何集成客户端模块,例如 - 仅作为示例 - Apollo Client 进入 qooxdoo 特定的generate.py 工作流,以便它们在浏览器中可用。

根据installation notes

要在网络浏览器或移动应用程序中使用此客户端,您需要一个能够在客户端上加载 NPM 包的构建系统。一些常见的选择包括 Browserify、Webpack 和 Meteor 1.3。 [...]

旁注:我目前使用 Babel 6 将我的所有源代码从一个单独的文件夹 source.es6/ 递归转译到“官方”文件夹 source/,然后由 generate.py 监视和处理。是否可以以某种方式使用它来解决我的问题?

OTOH,我希望至少能看到与 Webpack、Browserify 或 SystemJS 的某种集成。

【问题讨论】:

标签: javascript frameworks qooxdoo


【解决方案1】:

我建议您执行以下操作。首先,从 Apollo 客户端及其依赖项创建一个可加载的包,例如使用 Webpack。然后确保在加载 qooxdoo 应用程序之前将这些包加载到您的网页中。然后您的 qooxdoo 代码可以使用 Apollo API。

如果您选择使用 <script> 标签部署 Apollo 软件包,您可以使用 add-script 配置键让 generate.py 执行此操作。

我建议您将 Webpack 运行的输出放在您的 qooxdoo 项目的 resource 路径中,并在您的主 qooxdoo 类中为这些文件添加 @asset 提示。这将确保它们被复制到您的应用程序的 build 版本中,并且您可以直接在 index.htmladd-script 配置设置中使用这些文件的相对 URI。

我认为您使用 Babel6 进行编译不会对此有所帮助。 Apollo 代码已经是可消费的,您不想剖析它并使其成为 qooxdoo (es6) 源代码树的一部分,更不用说它的依赖关系了。我宁愿把它当作一个收缩包装的 JS 库,正如我所描述的那样,它像资源一样添加。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-28
  • 1970-01-01
  • 2017-06-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多