DOJO 错误 ID 已注册

DOJO error Id is already registered

本文关键字:注册 ID 错误 DOJO      更新时间:2023-09-26

嗨,我是道场的新手,陷入了一个简单的问题。我收到错误 尝试使用 id==listGrid 注册小部件,但该 id 已注册。让我与您分享我的代码

我有三个单选按钮

,单击任何单选按钮都会导致网格。我对所有三个单选按钮使用相同的div。第一次网格将出现第一个单选按钮,但第二次我收到上述错误。我在单击单选按钮时调用此函数

_showList:function()
{
    var item = this.gc.getSelectedItem()
    var id=item.id;
    var cont = 'zone';
    var action='getCityListById';
    var controller='network';
    this.cityGc = new GridViewControl({columns:
        [
          {action:action, controllerName:controller,parameters: {id:item.id, cont: cont}},
          {name:"City Name", field:"name", width: "200px", editable: false}
          ], diff:220
    },this.zoneListGrid);           
}

zoneListGrid 是一个道场连接点,对于所有三个单选按钮都是相同的。 请提出一些我可以解决的问题。提前致谢

由于每次单击单选按钮都会触发这段代码,因此 Dojo 将在第二次单击时尝试创建另一个网格组件。由于该连接点上已存在一个小部件,因此会引发错误。

要么重用已经存在的网格(对this.cityGc执行===空检查),要么先销毁现有网格(this.cityGc.destroy())。