javascript – Extjs同步一个商店给我一个url是未定义的错误在特定条件下

我有4个网格启用了拖放插件.它们的初始网格取决于名为state_id的db的值.

当我将选定的行放入新的网格时,我更新了state_id值,然后通知它与数据库同步并更新相关项目的值.

这大部分工作正常.当以下情况发生时,我得到此URL是未定义的错误

>用户点击从网格拖动行A
1到网格2
>用户拖动行A
网格2到网格1
>错误!网址
未定义.

这个错误似乎只是在添加到网格中的第一个项目来自同一个网格时才会发生.

>用户点击从行1到网格2的行A
>用户点击将行B从网格2拖到网格1
>用户点击从行2到网格1的行A
>按预期工作!

我的控制器中的drop事件处理程序:

dropit: function (node,data,dropRec,dropPosition) {
    if (node.dragData.records[0].store.$className == "AM.store.BacklogCards")
    {
        data.records[0].set('state_id',1);
        this.getBacklogCardsstore().sync();
    }
    else if (node.dragData.records[0].store.$className == "AM.store.InprogressCards")
    {
        data.records[0].set('state_id',2);
        this.getInprogressCardsstore().sync();
    }
    else if (node.dragData.records[0].store.$className == "AM.store.ReviewCards")
    {
        data.records[0].set('state_id',3);
        this.getReviewCardsstore().sync();
    }
    else
    {
        data.records[0].set('state_id',4);
        this.getDoneCardsstore().sync();
    }
    //node.dragData.records[0].store.sync();
},

关于什么导致这个和如何解决它的任何想法?

谢谢

解决方法

我可以建议您使用一个商店而不是三个商店,只需使用相同的商店添加三个相等的网格,但是对状态=进行过滤?

这样,您可以简单地更新状态,刷新两个相关的网格并同步一个商店.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...