javascript - 使 javascript 函数更短

标签 javascript extjs

好吧,我知道这个标题可能没有正确定义,但我基本上有兴趣使 ExtJs 6 中的一个 JavaScript 函数更短或更高效,这是我正在谈论的代码 此函数用于列表项点击,其使用 itemTpl

onMylist2ItemTap: function(dataview, index, target, record, e, eOpts) {
    var company_name = record.get('name');
    var license_idval = record.get('license_id');
    var start_date = record.get('start_date');
    var expiry_date = record.get('expiry_date');
    var product_name = record.get('product_name');
    var mac = record.get('mac_address');
    var server_url = record.get('server_url');
    var end = record.get('end_date');
    var duration = record.get('duration');
    var feature = record.get('feature');
    var invoice = record.get('invoice_number');
    var view = Ext.getCmp('mainview');
    view.setActiveItem(2);
    Ext.getCmp('name').setValue(company_name);
    Ext.getCmp('product_name').setValue(product_name);
    Ext.getCmp('mac').setValue(mac);
    Ext.getCmp('server').setValue(server_url);
    Ext.getCmp('start').setValue(start_date);
    Ext.getCmp('end').setValue(end);
    Ext.getCmp('duration').setValue(duration);
    Ext.getCmp('expiry').setValue(expiry_date);
    Ext.getCmp('features').setValue(feature);
    Ext.getCmp('license_id').setValue(license_idval);
    Ext.getCmp('invoice').setValue(invoice);
},

它真的很长,有什么办法可以缩短它,提高效率 谢谢

最佳答案

类似这样的吗?

var FIELDS = {
  "name": "name",
  "start_date": "start",
  // ...
};

然后

Object.keys(FIELDS).forEach(function(key) {
  Ext.getCmp(FIELDS[key]).setValue(record.get(key));
});

关于javascript - 使 javascript 函数更短,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37607016/

相关文章:

javascript - React - 向 Children 发送功能 Prop

javascript - 仅返回对象文字的构造函数如何工作?

javascript - 为什么我不能通过 nodemon 使用 mocha?

javascript - 为什么我的 jQuery ajax 调用不成功

javascript - IHttpPromise 使用 TypeScript 2.5 错误地扩展了 IPromise

javascript - ExtJs:表单 isValid() 为假。但是如何知道表单无效的原因呢?

javascript - 在参数之前路由extjs?

blackberry - Sencha 触摸 : non-touch Blackberry support

javascript - 事件触发后的执行顺序

javascript - 如何将嵌套数据显示到树中?