• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    Extjs优化(一)删除冗余代码提高运行速度

    发布者: 皮3591 | 发布时间: 2025-8-13 15:31| 查看数: 35| 评论数: 0|帖子模式

    Extjs 本身是一个加载慢的JS框架,这个需要程序员的多去优化,之前说过了JS的打包的优化
    这次来写写怎么减少冗余代码,也是提高运行速度,包含了1、删除代码通用2、提交表单通用3、初始化Gird通用化 本次只写 删除代码优化
    先贴出代码

    /**
    * 获取个GridPanel的选择的记录
    */
    function $getGdSelectedIds(grid, idName) {
    var selRs = grid.getSelectionModel().getSelections();
    var ids = Array();
    for (var i = 0; i < selRs.length; i++) {
    ids.push(eval("selRs.data." + idName));
    }
    return ids;
    }
    /**
    *删除
    */
    function $postDel(a) {
    Ext.Msg.confirm("信息确认", "您确认要删除所选记录吗?",
    function(b) {
    if (b == "yes") {
    Ext.getBody().mask("正在删除,请稍等");
    Ext.Ajax.request({
    url: a.url,
    params: {
    ids: a.ids
    },
    timeout: 100000000,//default 30000 milliseconds
    method: "OST",
    success: function(c, d) {
    Ext.getBody().unmask();
    Ext.ux.Toast.msg("操作信息", "成功删除该记录!");
    if (a.callback) {
    a.callback.call(this);
    return;
    }
    if (a.grid) {
    a.grid.getStore().reload();
    }
    },
    failure: function(c, d) {
    Ext.getBody().unmask();
    Ext.ux.Toast.msg("操作信息", "操作出错,请联系管理员!");
    }
    });
    }
    });
    }
    /**
    * Gird批量删除操作
    */
    function $delGridRs(a) {
    var b = $getGdSelectedIds(a.grid, a.idName);
    if (b.length == 0) {
    Ext.ux.Toast.msg("操作信息", "请选择要删除的记录!");
    return;
    }
    var c = {
    url: a.url,
    ids: b,
    grid: a.grid
    };
    $postDel(c);
    }

    单个删除代码优化结果由原来的24行代码修改为5行代码搞定,代码看上去也比较好看点。

    var a = Ext.getCmp("lanBookAllGrid");
    //单个删除
    $postDel({
    url: __ctxPath + "/traincost/multiDelPlanBook.action",
    ids: b,
    grid: a
    });

    批量删除也是一样

    $delGridRs({
    url: __ctxPath + "/traincost/multiDelPlanBook.action",
    grid:c.gridPanel,
    idName:'mainid'
    });

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表