在qooxdoo桌面(浏览器环境)加载模块
Loading modules in qooxdoo desktop (browser environment)
我正在努力如何集成客户端模块,例如 - Apollo Client
进入特定于 qooxdoo 的 generate.py
工作流程,以便它们在浏览器中可用。
To use this client in a web browser or mobile app, you'll need a build system capable of loading NPM packages on the client. Some common choices include Browserify, Webpack, and Meteor 1.3. [...]
旁注:我目前使用 Babel 6 以递归方式将我的所有源代码从单独的文件夹 source.es6/
转译到 "official" source/
文件夹中,然后由 generate.py
。是否可以以某种方式使用它来解决我的问题?
OTOH,我希望至少看到与 Webpack、Browserify 或 SystemJS 的某种集成。
我建议您执行以下操作。首先,从 Apollo Client 及其依赖项创建一个可加载包,例如使用网页包。然后确保在加载 qooxdoo 应用程序之前将这些包加载到您的网页中。然后 Apollo API 可用于您的 qooxdoo 代码。
如果您选择使用 <script>
标签部署 Apollo 包,您可以让 generate.py
使用 add-script
配置键来实现。
我建议您将 Webpack 运行 的输出放在您的 qooxdoo 项目的 resource
路径中,并在您的主 qooxdoo class 中为这些文件添加 @asset
提示。这将确保它们被复制到您的应用程序的 build
版本中,并且您可以使用这些文件的相对 URI,直接在您的 index.html
中或在 add-script
配置设置中。
我认为您使用 Babel6 进行转译对此处没有帮助。 Apollo 代码已经可以使用了,您不想分解它并使其成为您的 qooxdoo (es6) 源代码树的一部分,更不用说它的依赖项了。我宁愿把它当作一个收缩包装的 JS 库,正如我所描述的那样,它像资源一样添加。
我正在努力如何集成客户端模块,例如 - Apollo Client
进入特定于 qooxdoo 的 generate.py
工作流程,以便它们在浏览器中可用。
To use this client in a web browser or mobile app, you'll need a build system capable of loading NPM packages on the client. Some common choices include Browserify, Webpack, and Meteor 1.3. [...]
旁注:我目前使用 Babel 6 以递归方式将我的所有源代码从单独的文件夹 source.es6/
转译到 "official" source/
文件夹中,然后由 generate.py
。是否可以以某种方式使用它来解决我的问题?
OTOH,我希望至少看到与 Webpack、Browserify 或 SystemJS 的某种集成。
我建议您执行以下操作。首先,从 Apollo Client 及其依赖项创建一个可加载包,例如使用网页包。然后确保在加载 qooxdoo 应用程序之前将这些包加载到您的网页中。然后 Apollo API 可用于您的 qooxdoo 代码。
如果您选择使用 <script>
标签部署 Apollo 包,您可以让 generate.py
使用 add-script
配置键来实现。
我建议您将 Webpack 运行 的输出放在您的 qooxdoo 项目的 resource
路径中,并在您的主 qooxdoo class 中为这些文件添加 @asset
提示。这将确保它们被复制到您的应用程序的 build
版本中,并且您可以使用这些文件的相对 URI,直接在您的 index.html
中或在 add-script
配置设置中。
我认为您使用 Babel6 进行转译对此处没有帮助。 Apollo 代码已经可以使用了,您不想分解它并使其成为您的 qooxdoo (es6) 源代码树的一部分,更不用说它的依赖项了。我宁愿把它当作一个收缩包装的 JS 库,正如我所描述的那样,它像资源一样添加。