当尝试使用 PartLoader 时出现错误“arguments.callee.base.call 不是函数”

发布于 2024-08-21 04:56:15 字数 1310 浏览 3 评论 0原文

我正在尝试使用 qooxdoo 开发一个独立的应用程序。我想加载每个部分 带有 PartLoader 的 GUI。我只想在用户从菜单中选择相关菜单项时加载大组框。但是当我运行代码时(执行部分加载相关函数) 我收到错误“arguments.callee.base.call 不是函数”。我在 Windows XP 上使用 Firefox 3.6。

这是我在 Application.js 中加载代码的部分:

qx.io.PartLoader.require(["part1"], function()
{
        if (!this.__groupbox1)
        {
                this.__groupbox1 = new appname.Classname();
                container.add(this.__groupbox1, {left:20, top:40});

        }


}, this);

这是要加载的类代码:

qx.Class.define("appname.Classname",
{
  extend : new qx.ui.groupbox.GroupBox,

  construct : function()
  {

        this.base(arguments);
        this._addContent();



  },
  members:
  {
   _addContent : function()
   {
       some_ui_parts;
       this.add(some_ui.parts);
       some_more_ui_parts;
       this.add(some_more_ui_parts);
    }
   }
});

这是 config.jason 中与 PartLoader 相关的部分:

"jobs":
{
"common":
{
  "packages" :
  {
    "parts"  :
    {
      "boot"     :
      {
        "include" : [ "${QXTHEME}", "appname.Application" ]
      },
      "part1" :
      {
        "include" : [ "appname.Classname" ]
      }
    }
  }
}
}

注意:我刚刚替换了真实的 appname &类名用 appname.Classname 缩写。

我搜索了此错误,但找不到任何相关内容。

im trying to develop an standalone application with qooxdoo. i want to load each part
of GUI with PartLoader. i just want to load big group boxes when the user select the related menu item from the menu. but when i run the code (execute the part loading related function)
i got the error "arguments.callee.base.call is not a function". im using Firefox 3.6 on windows xp.

this is the my part loading code in Application.js:

qx.io.PartLoader.require(["part1"], function()
{
        if (!this.__groupbox1)
        {
                this.__groupbox1 = new appname.Classname();
                container.add(this.__groupbox1, {left:20, top:40});

        }


}, this);

this is the Class code to be loaded:

qx.Class.define("appname.Classname",
{
  extend : new qx.ui.groupbox.GroupBox,

  construct : function()
  {

        this.base(arguments);
        this._addContent();



  },
  members:
  {
   _addContent : function()
   {
       some_ui_parts;
       this.add(some_ui.parts);
       some_more_ui_parts;
       this.add(some_more_ui_parts);
    }
   }
});

and this is the part of the config.jason related to PartLoader:

"jobs":
{
"common":
{
  "packages" :
  {
    "parts"  :
    {
      "boot"     :
      {
        "include" : [ "${QXTHEME}", "appname.Application" ]
      },
      "part1" :
      {
        "include" : [ "appname.Classname" ]
      }
    }
  }
}
}

note: i just replaced real appname & Classname with appname.Classname short.

i searched for this error but i could not find anything related.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

箹锭⒈辈孓 2024-08-28 04:56:15

您必须将行更改

qx.Class.define("appname.Classname",
{
  extend : new qx.ui.groupbox.GroupBox,

qx.Class.define("appname.Classname",
{
  extend : qx.ui.groupbox.GroupBox,

当您定义新类并扩展它时,不需要“new”运算符。有关更多信息,请参阅 qooxdoo wiki 的类文档

You have to change the lines

qx.Class.define("appname.Classname",
{
  extend : new qx.ui.groupbox.GroupBox,

to

qx.Class.define("appname.Classname",
{
  extend : qx.ui.groupbox.GroupBox,

When you define a new class and extend it the "new" operator is not necessary. More infos about can be found at the Classes documentation at the qooxdoo wiki.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文