如何将Qooxdoo项目拆分为逻辑上独立的. js文件



我正在尝试在Qooxdoo应用程序中使用Javascript中的导入和导出模块函数。

我想创建一个"session"定义在我的session.js(见下面的文件内容)中,在我的主应用程序中,但是import语句:

"import {session) from 'session.js';">

需要在代码链中比application.js更高?(当我尝试这种方法时,我得到了一个错误)。我不确定import语句还能去哪里?我已经尝试了一些其他的。js项目文件没有任何成功。

在应用程序代码中,我将使用如下内容创建一个新的session实例:

let myssession = new session();">

这就是我的理论!

我所要做的就是把代码分成单独的。js文件,这样更容易管理。

"included"文件将仅在此项目中使用。我也在不断更新。所以我不想在构建application.js文件时分别重新构建它们。

我可能把这个弄得太复杂了。

几年前我用过一个非常老的Qooxdoo版本,但现在的Qooxdoo显然是非常不同的。根据我的旧代码,似乎可以通过使用诸如"var session = test.general.session.getInstance();"之类的Javascript语句引用其他文件。但这似乎不再奏效了?

如果有人能给我指出正确的方向,我将非常感激。我在Qooxdoo网站上找遍了,但似乎找不到任何相关的东西,当然我可能错过了我要找的东西!提前感谢。

丽莎。

非常简短的文件"session.js"

qx.Class.define('session',
{
extend : qx.core.Object,
type : 'singleton',
construct: function ()
{
this.base(arguments);
this.datasetName = 'Test Dataset';
this.userFirstName = 'Dave';
this.userSurname = 'Smith';
},
members:
{
datasetName : null,
userFirstName : null,
userSurname : null,
tblmdlOpenForms : null,
currentOpenForm : null,
currentOpenWindow : null,
__OpenFormIndex : null,
__menuOptionAlreadyOpen : function(option)
{
if (this.currentOpenForm == option)
return true
else
return false
},   
}
});
export {session};

qooxdoo依赖系统不同。不需要在源代码中手动包含qooxdoo类。它是在编译过程中自动完成的(发现依赖项,链接它们等等)。如果你使用的是桌面版的qooxdoo,那么导入和导出就不工作了,它们根本不需要。

您有一个必须在类名中使用的项目名称。例如,您的项目名为myproject,并且在此项目中包含会话文件。在这种情况下,完整的类名必须是myproject.session。

现在关于getInstance方法。该方法仍然存在,您可以使用它,但只能用于单例类。我不太明白你想用它做什么。如果你能创建一个单独的问题就好了。

如果您想包含其他脚本(非qooxdoo模块或文件),请阅读此处

:我上面所描述的qooxdoo。*版本。从7.1版本开始,你可以导入和使用es6或CommonJS模块。点击这里阅读。

最新更新